Vue监视属性天气案例

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8" />

    <title>天气案例_监视属性</title>

    <!-- 引入Vue -->

    <script type="text/javascript" src="../js/vue.js"></script>

</head>

<body>

    <div id="root">

        <h2>今天天气很{{info}}</h2>

        <button @click="changeWeather">切换天气</button>

        <hr>

        <h3>a的值是:{{numbers.a}}</h3>

        <button @click="numbers.a++">点我让a+1</button>

    </div>

</body>

<script type="text/javascript">

    Vue.config.productionTip = false

    const vm = new Vue({

        el: '#root',

        data: {

            isHot: true,

            numbers:{

                a:1,

                b:1

            }

        },

        computed: {

            info() {

                return this.isHot ? '炎热' : '凉爽'

            }

        },

        methods: {

            changeWeather() {

                this.isHot = !this.isHot

            }

        },

        watch:{

            //正常写法

           /*  isHot:{

                handler(newValue,oldValue){

                    console.log('isHot被修改了',newValue,oldValue)

                }

            }, */

            isHot(newValue,oldValue){

                console.log('asdasdasd')

            }

        }

    })

    vm.$watch('isHot',function(newValue,oldValue){

                console.log('asdasdasd')

            })

</script>

</html>

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容