05.计算属性和watch监视的使用及区别

<!DOCTYPE html>

<html lang="en">

<head>

    <meta charset="UTF-8">

    <meta http-equiv="X-UA-Compatible" content="IE=edge">

    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <title>Document</title>

</head>

<body>

    <div id="app">

        姓:<input type="text" v-model="firstName">

        名:<input type="text" v-model="lastName">

        <!-- 第一种 不用 使用js的拼接  数据在模板当中 this全部指向的是vm 模板当中this可以省略 -->

        <p>{{firstName+'-'+lastName}}</p>

   

        <!-- 第二种 不用 封装函数去写 -->

        <p>{{getFullName()}}</p>

        <!-- 第三种 计算属性 -->

        <p>{{fullName}}</p>

    </div>

    <script src="./js/vue.js"></script>

    <script>

        const vm = new Vue ({

            el:'#app',

            data(){

                return{

                    firstName:'zhao',

                    lastName:'liying'

                }

            },

            methods:{

                getFullName(){

                    // 在vue中所有的函数内部的this都指向vm,因为这些方法或者函数都会被vm代理

                    return this.firstName+ '-' +this.lastName

                }

            },

            // 当我需要一个数据,但是这个数据我没有,并且这个数据是由目前我有的数据计算而来的 就要用计算属性

            computed:{

                // fullName:{

                //     get(){

                //         return this.firstName +'-'+ this.lastName

                //     },

                //     set(){

                //     }

                // }

                fullName(){

                    return this.firstName + '-' + this.lastName

                }

            }

        })

        // 使用方法去获取姓名和使用计算属性去计算姓名的区别

        // 对于方法调用:你使用了几次方法调用,这个方法就调用了几次

        // 对于计算属性:你使用了不管多少次 计算属性的get方法只调用了一次

        // 计算属性一定存在缓存 这样有缓存使用多次的时候效率比方法高

    </script>

</body>

</html>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值