VueJS - 偵聽屬性



在本章中,我們將瞭解偵聽屬性。使用示例,我們將瞭解如何在 VueJS 中使用偵聽屬性。

示例

<html>
   <head>
      <title>VueJs Instance</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>

在上述程式碼中,我們建立了兩個文字框,一個帶有 千米 和另一個帶有 。在 data 屬性中,千米和米均初始化為 0。建立一個偵聽物件,其中包含兩個函式 千米。在這兩個函式中,完成了從千米到米的轉換,以及從米到千米的轉換。

當我們在任何文字框中輸入值時,只要其中任何一個發生更改,偵聽都會負責更新兩個文字框。我們不必特意分配任何事件,也不必等待其更改,並進行額外的驗證工作。偵聽負責使用各自函式中完成的計算更新文字框。

讓我們看看瀏覽器中的輸出。

TextBox

讓我們在千米文字框中輸入一些值,看看它如何在米文字框中更改,反之亦然。

TextBox Changes

現在,讓我們在米文字框中輸入值,看看它如何在千米文字框中更改。這是在瀏覽器中看到的顯示。

Watch
廣告