当前位置: 首页 > news >正文

网站建设价类型建设厅的电工证

网站建设价类型,建设厅的电工证,石家庄二手房,东莞电子产品网站建设计算属性VS监视属性(侦听属性) computed和watch之间的区别: 1.computed能完成的功能,watch都可以完成。 2.watch能完成的功能,computed不一定能完成,例如:watch可以进行异步操作。 两个重要的小…

计算属性VS监视属性(侦听属性)

computed和watch之间的区别:
1.computed能完成的功能,watch都可以完成。
2.watch能完成的功能,computed不一定能完成,例如:watch可以进行异步操作。
两个重要的小原则:
1.所被Vue管理的函数,最好写成普通函数,这样this的指向才是vm 或 组件实例对象。
2.所有不被Vue所管理的函数(定时器的回调函数、ajax的回调函数等、Promise的回调函数),最好写成箭头函数,这样this的指向才是vm 或 组件实例对象。

监视属性实现

<!DOCTYPE html>
<html><head><meta charset="UTF-8" /><title>姓名案例_watch实现</title><!-- 引入Vue --><script type="text/javascript" src="../js/vue.js"></script></head><body><!-- computed和watch之间的区别:1.computed能完成的功能,watch都可以完成。2.watch能完成的功能,computed不一定能完成,例如:watch可以进行异步操作。两个重要的小原则:1.所被Vue管理的函数,最好写成普通函数,这样this的指向才是vm 或 组件实例对象。2.所有不被Vue所管理的函数(定时器的回调函数、ajax的回调函数等、Promise的回调函数),最好写成箭头函数,这样this的指向才是vm 或 组件实例对象。--><!-- 准备好一个容器--><div id="root">姓:<input type="text" v-model="firstName"> <br/><br/>名:<input type="text" v-model="lastName"> <br/><br/>全名:<span>{{fullName}}</span> <br/><br/></div></body><script type="text/javascript">Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。const vm = new Vue({el:'#root',data:{firstName:'张',lastName:'三',fullName:'张-三'},watch:{firstName(val){setTimeout(()=>{console.log(this)this.fullName = val + '-' + this.lastName},1000);},lastName(val){this.fullName = this.firstName + '-' + val}}})</script>
</html>

计算属性实现

<!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">姓:<input type="text" v-model="firstName"> <br/><br/>名:<input type="text" v-model="lastName"> <br/><br/>全名:<span>{{fullName}}</span> <br/><br/></div></body><script type="text/javascript">Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。const vm = new Vue({el:'#root',data:{firstName:'张',lastName:'三',},computed:{//完整写法/* fullName:{get(){console.log('get被调用了')return this.firstName + '-' + this.lastName},set(value){console.log('set',value)const arr = value.split('-')this.firstName = arr[0]this.lastName = arr[1]}} *///简写fullName(){console.log('get被调用了')return this.firstName + '-' + this.lastName}}})</script>
</html>

区别

用计算属性实现上述功能,比较简单。但是如果想要实现当姓改变时,延迟一秒在改变姓名的值,则必须使用监视属性的写法。
如果用计算属性,以下写法是错误的

<!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">姓:<input type="text" v-model="firstName"> <br/><br/>名:<input type="text" v-model="lastName"> <br/><br/>全名:<span>{{fullName}}</span> <br/><br/></div></body><script type="text/javascript">Vue.config.productionTip = false //阻止 vue 在启动时生成生产提示。const vm = new Vue({el:'#root',data:{firstName:'张',lastName:'三',},computed:{//完整写法/* fullName:{get(){console.log('get被调用了')return this.firstName + '-' + this.lastName},set(value){console.log('set',value)const arr = value.split('-')this.firstName = arr[0]this.lastName = arr[1]}} *///简写fullName(){//错误写法 注意 注意 注意,因为fullName没有return了console.log('get被调用了')setTimeout(()=>{return this.firstName + '-' + this.lastName},1000);					}}})</script>
</html>
http://www.yayakq.cn/news/625403/

相关文章:

  • 周口网站设计阿里邮箱
  • 猪八戒网站怎么做任务网站建设工期及预算
  • 银行收取网站建设费的会计科目一起做业英语网站
  • vue做的网站大全意大利 网站设计
  • 横峰县建设局网站网络推广服务
  • 做板子焊接的网站的公司名字做网站为何要续费
  • 福建建设局网站招标学习软件有哪些
  • 网站建设实施过程大都会app下载二维码
  • 中国城乡建设结合部网站佛山手机建站模板
  • seo网站优化培训怎么做龙中龙网站开发
  • 国内最大的网站制作公司注册号域名后如何建设公司网站
  • 东莞品牌型网站建设价格苏州专业网站设计制作公司
  • 阿里云服务器搭网站同时做网盘wordpress 所属分类
  • 企业网站建立之前必须首先确定可以自己做斗图的网站
  • 个人信息网站建设方案书框架栏目wordpress 简码使用
  • 建设网站的费用入什么科目用jsp怎么做的购物网站
  • wordpress拖曳式建站上海最有名的设计公司有哪些
  • 网站没收录了怎么办北京太阳宫网站建设
  • ps切片工具做网站安卓app安装
  • 做外贸的网站公司企业注册网站
  • 网站开发视频是存储的列举及简述网站建设的流程
  • 域名同时做邮箱和网站软件开发前景和发展
  • 南京工程网站建设莆田企业网站建设
  • 网站建设在电子商务中意义贵阳官网建设价格
  • 网站主页没有关键词潍坊哪家做网站做的最好
  • 做网站前期工作怎么建设投票网站
  • cms 企业网站网站建设 sam大叔排名三天上首页
  • 自己做网站接入微信和支付宝天堂网长尾关键词挖掘网站
  • 网站开发培训网站seo最强
  • 榆林市建设局官方网站影业的网站怎么做