您好,登錄后才能下訂單哦!
這篇文章主要為大家展示了“Vue開發(fā)過程中遇到的疑惑知識點(diǎn)有哪些”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Vue開發(fā)過程中遇到的疑惑知識點(diǎn)有哪些”這篇文章吧。
一、計(jì)算緩存computed與Methods
html代碼:
<div id='app'> <p>{{ msg }}</p> <p>reverse {{ reverse2 }}</p> </div>
JS
var app = new Vue({ el : '#app' data : { msg : '初始值' } , methods : { reverse : function(){ this.msg = this.msg.split('').reverse().join(''); } }, created : function(){ console.log('msg is creadted' + new Date() ); }, computed : { reverse2 : function(){ return this.msg.split('').reverse().join('') + new Date(); } } });
計(jì)算屬性就可以看作普通屬性一樣來使用
更改html
<div id='app'> <p>{{ msg }}</p> <button v-on:click='reverse'>{{ new Date()}} </button> </div>
結(jié)論:
相同點(diǎn): 兩者完成的功能都是一樣的.
不同點(diǎn): 計(jì)算屬性computed更依賴緩存,也就是說只要msg(你的數(shù)據(jù))不發(fā)生變化,reverse2這個計(jì)算屬性就不會重新計(jì)算,還是會使用之前的.而Methods是你每一次調(diào)用就會重新進(jìn)行計(jì)算,重新渲染.
所以如果你的計(jì)算屬性很復(fù)雜,就可以考慮使用計(jì)算屬性,利用它的緩存可以保持很好的性能.
二、v-if和v-show區(qū)別
v-if: 如果初始渲染條件為false,那什么都不做,第一次為true時候,會進(jìn)行局部編譯,這個編譯會緩存起來.當(dāng)條件再為false會銷毀事件監(jiān)聽器和子組件.
v-show:始終存在dom里面,也就是說始終被編譯了.之前按照display屬性來切換.
三、重塑數(shù)組的概念
就是說有些數(shù)組方法調(diào)用后會改變原數(shù)組—就是變異方法
調(diào)用后不會改變原數(shù)組就是非變異方法
Vue不可以做的事(關(guān)于數(shù)組重塑)
直接通過設(shè)置一個項(xiàng)的索引值. vm.items[indexOfItem] = newValue
直接修改數(shù)組長度. vm.items.length = newLength
針對上述兩種提供我們可以使用
Vue.set() splice()
四、顯示數(shù)組的過濾與排序
通過返回一個過濾或者排序的數(shù)組的計(jì)算屬性
//html <ul> <li v-for='n in soets'>{{ n }}</li> </ul> //js computed : { soets : function(){ return this.number.filter(function(num){ return num > 2; }) } }
通過methods來實(shí)現(xiàn):
//html <ul> <li v-for='n in sort()'>{{ n }}</li> </ul> //js methods : { sort : function(){ return this.number.filter(function(num){ return num >2 }); } },
以上是“Vue開發(fā)過程中遇到的疑惑知識點(diǎn)有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。