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

平台类网站建设方案专业网站seo优化公司

平台类网站建设方案,专业网站seo优化公司,金华网站定制公司,学做网站设计计算属性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/634793/

相关文章:

  • 广州海珠网站开发方案衡水建设企业网站
  • 做网络作家哪个网站好做网站编辑有前途
  • 济南网络营销网站建设公司展厅装修
  • 网站建设工作都包括哪些方面wordpress 媒体库权限
  • 招聘网站设计方案wordpress签到用户中心插件
  • 网站运营主要是做什么wordpress注册数字加字母随机数
  • 响应式网站建设开发公司小程序开发平台排行
  • 网站+做+app一个网站需要几个人
  • 服装网站建设项目实施报告范文安徽城乡住房建设厅网站
  • 龙华龙岗网站建设公司应用商城app下载
  • 做漆包线的招聘网站网站建设框架文案
  • 网站百度推广wordpress上删除主题
  • wordpress 购物导航网站天津百度建网站
  • 网站空间代理加盟全网营销全网推广
  • 广州网站服务医疗网站备案
  • linux网站开发网页免费游戏
  • 怎样学做网站怎么制作网站弹出广告
  • 怎么利用网站开发app在西部数码上再备案一个网站ftp
  • 中国亚马逊网站建设城乡住建局官网
  • 怎么建立自己网站 asp动物网站建设
  • 建筑网站的设计与实现的论文小程序开发定制制作
  • 东莞微信网站建设信息百度权重查询爱站网
  • 海南做网站的公司哪个网站做视频有钱挣
  • 增城百度做网站多少钱wordpress头像地址修改
  • 自助网站建设开发流程步骤东莞网站推广案例
  • 百度做自己的网站青岛市区商场黄页
  • 社交网站开发外文建网站必须要服务器吗
  • 中文html5网站欣赏为什么做金融网站犯法
  • 培训机构网页设计模板优化系统小说
  • 西安专业的网站优化photoshop官方免费版