[Vue]vue核心面試題:元件中的data為什麼是一個函式
1.vue中元件是用來複用的,為了防止data複用,將其定義為函式。
2.vue元件中的data資料都應該是相互隔離,互不影響的,元件每複用一次,data資料就應該被複制一次,之後,當某一處複用的地方元件內data資料被改變時,其他複用地方元件的data資料不受影響,就需要通過data函式返回一個物件作為元件的狀態。
3.當我們將元件中的data寫成一個函式,資料以函式返回值形式定義,這樣每複用一次元件,就會返回一份新的data,擁有自己的作用域,類似於給每個元件例項建立一個私有的資料空間,讓各個元件例項維護各自的資料。
4.當我們元件的date單純的寫成物件形式,這些例項用的是同一個建構函式,由於JavaScript的特性所導致,所有的元件例項共用了一個data,就會造成一個變了全都會變的結果。
相關文章
- Vue 元件data為什麼必須是函式?Vue元件函式
- Vue(ES6)中的data屬性為什麼不能是一個物件?Vue物件
- Vue核心知識-Vue的元件之render函式Vue元件函式
- vue在一個函式中呼叫另外一個函式Vue函式
- 前端Vue:函式式元件前端Vue函式元件
- 【vue】為什麼v-for中需要一個key呢?Vue
- Vue函式式元件的應用Vue函式元件
- 為什麼Vue.mixin中的定義的data全域性可用Vue
- Vue 中,如何將函式作為 props 傳遞給元件Vue函式元件
- (譯)函式式元件在Vue.js中的運用函式元件Vue.js
- 為什麼defineProps宏函式不需要從vue中import匯入?函式VueImport
- 以vue依賴統計為核心的框架(函式),mveVue框架函式
- 一什麼是函式?函式
- 說說 Vue.js 中的 functional 函式化元件Vue.jsFunction函式元件
- 征服 JavaScript 面試:什麼是純函式?JavaScript面試函式
- 為什麼要用Vue.js的元件化開發Vue.js元件化
- 聊一聊Vue中的回撥函式Vue函式
- JS每日一題:new Vue()中發生了什麼?JS每日一題Vue
- Vue中render函式的使用Vue函式
- Vue元件實現函式防抖Vue元件函式
- Vue實現函式防抖元件Vue函式元件
- 【vue】自定義一個websocket工具函式VueWeb函式
- vue面試題:在vue下書寫一個post請求?Vue面試題
- [譯] Vue.js 還是 React?你會選擇哪一個?為什麼?Vue.jsReact
- vue: 從一個下拉框元件理解vue中的父子通訊Vue元件
- [譯]掌握 JavaScript 面試:什麼是純函式?JavaScript面試函式
- 征服 JavaScript 面試:什麼是函式組合JavaScript面試函式
- vue 中this.$emit()的返回值是什麼?VueMIT
- vue專案為什麼有些是pages有些是viewsVueView
- 在vue2中,什麼是雙向繫結,為什麼vue3要進行最佳化?Vue
- vue的一個分頁元件Vue元件
- Vue 原始碼中的工具函式Vue原始碼函式
- 理解Vue中的Render渲染函式Vue函式
- vue父元件中修改子元件樣式Vue元件
- 寫一個VUE元件有感Vue元件
- vue函式元件,slot分發,只實現default slot的問題Vue函式元件
- Vue中的data配置項Vue
- js中在一個函式中引用另一個函式中的函式,可以這麼做JS函式