观察属性$watch
<!DOCTYPE html> <html lang="zh"> <head> <title></title> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <script src="https://unpkg.com/vue/dist/vue.js"></script> <link href="../css/style.css" rel="stylesheet"> </head> <body> <div id="myApp"> <p>今年3月3日发卖的任天堂新一代主机Switch的价格是:{{price}}円,含税价格为:{{priceInTax}}円,折合人民币为:{{priceChinaRMB}}元。</p> <button @click="btnClick(10000)">加价10000円</button> </div> <script> var myApp = new Vue({ el: '#myApp', data: { price: 0, priceInTax: 0, priceChinaRMB: 0, }, watch: { price: function(newVal, oldVal){ console.log(newVal, oldVal); this.priceInTax = Math.round(this.price * 1.08); this.priceChinaRMB = Math.round(this.priceInTax / 16.75); }, }, methods: { btnClick: function(newPrice){ this.price += newPrice; }, }, }); myApp.price = 29980; </script> </body> </html>