美文网首页
vue项目中prototype的应用

vue项目中prototype的应用

作者: 变量只提升声明不提升赋值 | 来源:发表于2020-12-07 15:11 被阅读0次

    js通过原型链可以实现继承那么我们可以对Vue.prototype进行操作,对Vue.prototype添加属性或者方法,所有通过new Vue创建的实例都可以继承这些属性或方法,例如我们在main.js 中添加如下代码

    这里给原型定义一个属性
    Vue.prototype.myName="哈哈"
    

    在其他的组件中可以通过this.myName访问到这个属性,但是当我们去修改这个属性的时候会发现,原型身上的属性并没有改变

    如:
    this.myName = 'XIXI'
    打印一下原型身上的myName会发现,还是哈哈,
    

    这是因为,每个new出来的vue实例都会继承原型身上的属性,而继承过去的属性就是这个vue实例自己的了,他随意修改,都不会影响到原型身上的属性,(类似于子组件不能修改父组件的值,他们是一个道理)

    那么我就是想在vue中使用全局变量,怎么办
    可以直接在main.js中定义变量,然后在组件中通过this.$root来访问根实例,这样就可以做到全局变量了

    相关文章

      网友评论

          本文标题:vue项目中prototype的应用

          本文链接:https://www.haomeiwen.com/subject/nwqtgktx.html