vue.js - Vue.prototype的问题

查看:1222
本文介绍了vue.js - Vue.prototype的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

萌新求助各位大佬们;
我用Vue在main.js中创建

Vue.prototype.a = 1;  这个全局的变量后;

在组件a中使用

console.log(this.a);     // => 1
this.a = 2;

然后从a跳到b后;

console.log(this.a);

还是1,不是2,为什么? 怎么修改这种全局的变量啊?还是说用其他的方法设置和修改全局的变量或对象?

解决方案

这个不是全局变量,而是原型。

因为每一次跳转到新的Vue页面,都是一个独立的Vue实例,实例中this.aVue.prototype.a而来,所以仍然是1。

如果需要设置全局变量,在main.js中,Vue实例化的代码里添加

new Vue({
    ...
    data() {
        return {
            ...,
            a: 1
            ...
        };
    },
    ...
});

其他所有组件中通过$root.a可访问此变量。

这篇关于vue.js - Vue.prototype的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆