亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

vue 計算屬性和偵聽器的使用小結

瀏覽:98日期:2022-10-09 10:06:14
1. 計算屬性和偵聽器1.1 計算屬性

<!DOCTYPE html><html> <head> <meta charset='utf-8'> <script src='https://cdn.staticfile.org/vue/2.4.2/vue.min.js'></script> </head> <body> <div id='app'><p>{{ message }}</p><p>{{ reversedMessage }}</p> </div> <script> new Vue({el: ’#app’,data: {message: ’hello’},computed: {reversedMessage: function () {return this.message.split(’’).reverse().join(’’)}/*// 相當于reversedMessage: {get(){return this.message.split(’’).reverse().join(’’)}}*/} }); </script> </body></html>

vue 計算屬性和偵聽器的使用小結

解釋:我們在屬性computed中定義了計算屬性reversedMessage,這里提供的函數將作為計算屬性reversedMessage的getter函數。

1.2 setter

計算屬性默認只有getter,不過我們可以提供一個setter。

<!DOCTYPE html><html> <head> <meta charset='utf-8'> <script src='https://cdn.staticfile.org/vue/2.4.2/vue.min.js'></script> </head> <body> <div id='app'><p>{{ message }}</p><p>{{ reversedMessage }}</p><input type='text' v-model='reversedMessage' /> </div> <script> new Vue({el: ’#app’,data: {message: ’hello’},computed: {reversedMessage: {get(){return this.message.split(’’).reverse().join(’’)},set(value){this.message = value.split(’’).reverse().join(’’)}}} }); </script> </body></html>1.3 緩存

<!DOCTYPE html><html> <head> <meta charset='utf-8'> <script src='https://cdn.staticfile.org/vue/2.4.2/vue.min.js'></script> </head> <body> <div id='app'><p>{{ message }}</p><p>{{ reversedMessage }}</p><p>{{ reversedMessage1() }}</p> </div> <script> new Vue({el: ’#app’,data: {message: ’hello’},methods: {reversedMessage1: function(){return this.message.split(’’).reverse().join(’’)}},computed: {reversedMessage: function () {return this.message.split(’’).reverse().join(’’)}} }); </script> </body></html>

vue 計算屬性和偵聽器的使用小結

注意:雖然通過計算屬性和方法,都可以達到同樣的效果,但是計算屬性是基于它們的響應式依賴進行緩存的。只在相關響應式依賴發生改變時它們才會重新求值。

1.4 偵聽屬性

通過Vue實例的watch屬性可以偵聽數據的變化。

<!DOCTYPE html><html> <head> <meta charset='utf-8'> <script src='https://cdn.staticfile.org/vue/2.4.2/vue.min.js'></script> </head> <body> <div id='app'><p>{{ message }}</p><button @click='reverse=!reverse'>反轉</button> </div> <script> new Vue({el: ’#app’,data: {message: ’Vue’,reverse: false},watch: {// message: function(newVal, oldVal){reverse: function(newVal){console.log(newVal)this.message = this.message.split(’’).reverse().join(’’)}}, }); </script> </body></html>

我們可以通過實例屬性vm.$watch達到同樣的效果。

<!DOCTYPE html><html> <head> <meta charset='utf-8'> <script src='https://cdn.staticfile.org/vue/2.4.2/vue.min.js'></script> </head> <body> <div id='app'><p>{{ message }}</p><button @click='reverse=!reverse'>反轉</button> </div> <script> var vm = new Vue({el: ’#app’,data: {message: ’Vue’,reverse: false} });// vm.$watch(’reverse’, function (newVal, oldVal) {vm.$watch(’reverse’, function (newVal) {console.log(newVal)this.message = this.message.split(’’).reverse().join(’’)}); </script> </body></html>

以上就是vue 計算屬性和偵聽器的使用小結的詳細內容,更多關于vue 計算屬性和偵聽器的資料請關注好吧啦網其它相關文章!

標簽: Vue
相關文章:
主站蜘蛛池模板: 新香蕉视频| 久久久受www免费人成 | 国产或人精品日本亚洲77美色 | 欧美一级毛片激情 | 国产20岁美女一级毛片 | 91久久视频| 成人自拍视频 | 51国产视频 | 久久er这里都是精品23 | 国外精品视频在线观看免费 | 一级片色| 玖玖爱在线观看视频在线 | 亚洲欧美综合网站 | 久久一本色系列综合色 | 福利一区二区三区视频在线观看 | 一级在线视频 | 久草国产精品视频 | 男女在线观看啪网站 | 亚洲国产精品视频在线观看 | 白桃花在线 | 中文字幕1区 | 亚洲视频在线观看免费视频 | 欧美一区二区视频在线观看 | 国产精品日本一区二区不卡视频 | 国产福利在线观看一区二区 | 一级高清毛片免费a级高清毛片 | 欧美亚洲综合在线观看 | 国产日本三级欧美三级妇三级四 | 色综合区 | 欧美屁屁影院 | 香蕉香蕉国产片一级一级毛片 | 800av在线视频 | 国产成+人+综合+亚洲欧美丁香花 | 欧美成人香蕉网在线观看 | 国产激烈无遮挡免费床戏视频 | 天天影视欧美综合在线观看 | 国产又色又爽黄的网站免费 | 亚洲精品手机在线 | 国产喷水视频 | 国产精品成人h视频 | 一级二级黄色片 |