国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

深入對Vue.js $watch方法的理解

2019-11-19 17:06:46
字體:
來源:轉載
供稿:網友

博主最近對著vue.js的官方教程在自學vue.js,博主自幼愚鈍,在教程中真的是好多點都不太理解,接下來要說的這個$watch方法就是其中一個不太理解的點了。咱們先來看一下對于$watch方法在vue.js的API中是怎么解釋的吧:觀察 Vue 實例變化的一個表達式或計算屬性函數。回調函數得到的參數為新值和舊值。表達式只接受監督的鍵路徑。對于更復雜的表達式,用一個函數取代。官方示例:

// 鍵路徑vm.$watch('a.b.c', function (newVal, oldVal) { // 做點什么})// 函數vm.$watch( function () {  return this.a + this.b }, function (newVal, oldVal) {  // 做點什么 })

vm.$watch 返回一個取消觀察函數,用來停止觸發回調:

var unwatch = vm.$watch('a', cb)// 之后取消觀察unwatch()

博主很認真地看了看,當時就懵逼了,沒看懂。還好網上大神多,查了查終于搞明白這個$watch方法的用法了。說白了$watch這貨就是觀察一個值的變化,觀察的這個值一變化的話,那么就執行function里面的語句。廢話不多說,咱們直接看代碼:

HTML:

<div id="watch">    firstName:<input type="text" name="li" v-model="firstName">    <br>    lastName:<input type="text" name="fei" v-model="lastName">    <p>fullName: {{fullName}}</p></div>

JS:

var vm = new Vue({      el: '#watch',      data: {        firstName: 'a',        lastName: 'fei',        fullName: 'a fei'      },      watch: {        firstName: function (val) {          this.fullName = val + ' ' + this.lastName        },        lastName: function (val) {          this.fullName = this.firstName + ' ' + val        }      }})

在代碼中,我們用wach方法監聽了firstName和lastName這兩個變量,我們在input框框那里做了雙綁定,這樣子的話,我們在firstName輸入框中輸入的值就會改變變量firstName的值,同理可得lastName,因為值的改變和watch這貨的觀察,所以watch里面的function代碼就會運行,這樣子fullName也就會相應地改變了。這樣子$watch這方法的用法也就一下子明了了。上述的例子中$watch就和原生js里面的on-change差不多了。

以上就是博主對$watch方法的理解了,希望可以幫助大家理解這一方法,要是上述有何不對的地方,麻煩各位看官多多指出,謝謝大家。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 新野县| 辛集市| 临沧市| 田林县| 廉江市| 九台市| 嘉定区| 双城市| 临武县| 高淳县| 平阴县| 永寿县| 海原县| 五家渠市| 建德市| 赣榆县| 安新县| 大同县| 嫩江县| 石楼县| 确山县| 北宁市| 拉孜县| 通江县| 临邑县| 景东| 东平县| 武宣县| 澎湖县| 绿春县| 石家庄市| 云梦县| 兴国县| 南岸区| 阜新市| 天峻县| 洛宁县| 和静县| 吴忠市| 昌江| 大城县|