VueJS watch屬性


在本章中,我們將學習watch屬性。 使用一個例子,我們會看到在VueJS中使用watch屬性。

範例

建立一個檔案:watch-property.html -

<html>
   <head>
      <meta charset="utf-8" />
      <title>VueJs Watch屬性範例</title>
      <script type = "text/javascript" src = "js/vue.js"></script>
   </head>
   <body>
      <div id = "computed_props">
         公里(kilometers) : <input type = "text" v-model = "kilometers">
         米(meters) : <input type = "text" v-model = "meters">
      </div>
      <script type = "text/javascript">
         var vm = new Vue({
            el: '#computed_props',
            data: {
               kilometers : 0,
               meters:0
            },
            methods: {
            },
            computed :{
            },
            watch : {
               kilometers:function(val) {
                  this.kilometers = val;
                  this.meters = val * 1000;
               },
               meters : function (val) {
                  this.kilometers = val/ 1000;
                  this.meters = val;
               }
            }
         });
      </script>
   </body>
</html>

在上面的程式碼中,我們建立了兩個文字框,一個是公里,另一個是。 在資料屬性中,公里被初始化為0watch物件建立有兩個函式:kilometersmeters。 在這兩個功能中,完成從公里到米,從米到公里的轉換。

當在任何一個輸入框中輸入數值時,watch會負責更新兩個文字框。不必專門分配任何事件,等待它改變,並做了額外的驗證工作。watch負責通過在各個功能中完成的計算來更新文字框。

我們來看看瀏覽器中的輸出。如下圖所示 -

現在在公里 文字框中輸入一些值,並在文字框中看到它的變化,反之亦然。