1. 程式人生 > >Vue監聽資料變化

Vue監聽資料變化

淺度監聽

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>淺度監聽</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <meta name="apple-mobile-web-app-capable" content
="yes">
<meta name="apple-mobile-web-app-status-bar-style" content="black"> <script src="../js/vue1.0.js"></script> <script src="../js/vue-resource.js"></script> <script> window.onload = function(){ var vm = new Vue({ el:'#box'
, data:{ a:111, b:2 } }); vm.$watch('a',function(){ alert('發生變化了'); }); document.onclick = function(){ vm.a = 1; } }
</script
>
</head> <body> <div id="box">
{{a}} <hr> {{b}} </div> </body> </html>

深度監聽

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>深度監聽</title>
    <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=0">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <script src="../js/vue1.0.js"></script>
    <script src="../js/vue-resource.js"></script>
    <script>
        window.onload = function(){
            var vm = new Vue({
                el:'#box',
                data:{
                    json:{name:'abcdef',age:'16'},
                    b:2
                }
            });
            vm.$watch('json',function(){
                alert('發生變化了');
            },{deep:true});
            document.onclick = function(){
                vm.json.name = "aaaaaa";
            }
        }
    </script>
</head>
<body>
<div id="box">
    {{json | json}}
    <hr>
    {{b}}
</div>
</body>
</html>