vue定义data的三种方式与区别

1.第一种写法,对象。

复制代码
var app = new Vue({
  el: '#yanggb',
  data: {
    yanggb: 'yanggb'
  }
})
复制代码

2.第二种写法,函数。

复制代码
var app = new Vue({
  el: '#yanggb',
  data: function() {
    return {
      yanggb: 'yanggb'
    }
  }
})
复制代码

3.第三种写法,函数,是第二种写法的ES6写法。

复制代码
var app = new Vue({
  el: '#yanggb',
  data() {
    return {
      yanggb: 'yanggb'
    }
  }
})
复制代码

三种写法的区别

在简单的vue实例应用中,三种写法几乎是没有什么区别的,因为你定义的#yanggb对象不会被复用。

但是如果是在组件应用的环境中,就可能会存在多个地方调用同一个组件的情况,为了不让多个地方的组件共享同一个data对象,只能返回函数。这个与JavaScript的作用域特性有关,函数自己拥有私有的作用域,函数之间的作用域相互独立,也就不会出现组件对数据的绑定出现交错的情况。

posted @ 2019-12-01 23:46  葡萄美酒夜光杯、  阅读(1371)  评论(0编辑  收藏  举报
(function(){var audio=new Audio("https://files.cnblogs.com/files/yanggb/bgmusic.js");audio.play();audio.volume=0.02;audio.loop=true})();