VUE2.0不可忽視的很多變化


今天使用webpack-sample初始一個vue-cli項目,在app.vue文件中添加了個鈎子函數ready,可是ready內的事件一直不執行,檢查了webpack文件和package.json也沒發現什么問題,瀏覽器也沒報錯或者提示,很令人捉急。然后去github看了webpack-simple源碼,才發現原來vue init webpack-simple默認安裝的vue是2.0版本。馬上推測到是不是因為vue2.0廢棄了ready的用法,果然不出所料,我真是太機智了。看了下vue2.0的英文的英文文檔,發現相對於vue1.0有很多變化,而且變化不是一般的大。。。。如果一旦項目要升級到vue2.0,那么很多頁面要整改,很多組件都不能用了,所以目前的項目打死不能升級。可以通過vue init webpack-simple#1.0安裝基於vue1.0版本的vue-cli。

下邊來分析下vue2.0幾個重要的與自己目前項目相關的變化,純粹是個人理解,權當了解.

  詳細變化請見官方文檔分析https://github.com/vuejs/vue/issues/2873

  vue2.0中文官方文檔已發布:http://vuefe.cn/guide/

1.目前的項目幾乎每個頁面都用到了1.0的ready鈎子函數,然而2.0已廢棄不用,進而使用mounted替換,同時還新增了beforeMount、beforeUpdate、updated等,私以為越來越向react看齊了有木有。。

beforeUpdate的作用是在頁面初始渲染視圖之后,一旦監測到data發生變化,在變化的數據重新渲染視圖之前會觸發beforeUpdate鈎子函數,這也是重新渲染之前最后修改數據的機會

updated的作用則是在data發生變化渲染更新視圖之后觸發。

2.同時廢棄的還有events、$dispatch、$broadcast,官方推薦使用vuex或者全局的事件驅動,然而廢棄的這些方法在vux UI框架中很多地方都有使用,無疑在項目中用到它的地方在2.0版本都會不起作用,甚至會報錯。

3.v-ref、v-el 棄用 統一使用ref屬性為元素或組件添加標記,然后通過this.$refs獲取

例如<p ref="a"></p>   獲取方法為this.$refs.a 對於自定義組件同樣適用

4.$els 是用來獲取元素DOM對象,這個也廢棄不用,$refs可以起到替代性作用。

5.v-for循環中常用的$index、$key也已不支持使用,trackby被key屬性替換。

6.自定義組件中的partial,棄用,這個一直沒用到

7.新增 v-once指令

8.新增 propsData

9.新增 render

 

個人博客傳送門》》》》》

/**
 *  ┏┓   ┏┓+ +
 * ┏┛┻━━━┛┻┓ + +
 * ┃       ┃  
 * ┃   ━   ┃ ++ + + +
 * ████━████ ┃+
 * ┃       ┃ +
 * ┃   ┻   ┃
 * ┃       ┃ + +
 * ┗━┓   ┏━┛
 *   ┃   ┃           
 *   ┃   ┃ + + + +
 *   ┃   ┃
 *   ┃   ┃ +  神獸保佑
 *   ┃   ┃    代碼無bug  
 *   ┃   ┃  +         
 *   ┃    ┗━━━┓ + +
 *   ┃        ┣┓
 *   ┃        ┏┛
 *   ┗┓┓┏━┳┓┏┛ + + + +
 *    ┃┫┫ ┃┫┫
 *    ┗┻┛ ┗┻┛+ + + +
 */


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM