Vue2 例項中的 data 屬性三種寫法與作用
阿新 • • 發佈:2018-12-30
<script src="https://unpkg.com/vue/dist/vue.js"></script> <div id="app"> <span>{{count}}</span> <button @click="inc">+</button> </div> <script> var app = new Vue({ // 1. // data () { // return {count: 0} // }, // 2. // data: { // count: 0 // }, // 3. data: function() { return { count: 0 } }, methods: { inc () {this.count++} } }) app.$mount('#app') </script>
首先,1是3的語法糖,是新的ES6語法,和3一摸一樣。
然後1和2在官方文件上都有例子,區別也解釋得很清楚。簡而言之,在app = new Vue
物件時,沒什麼區別,因為你app
物件不會被複用。但是在元件中,因為可能在多處呼叫同一組件,所以為了不讓多處的元件共享同一data
物件,只能返回函式。