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

网站建设和编辑实训报告理县网站建设公司

网站建设和编辑实训报告,理县网站建设公司,修改wordpress主页标题,紫色 网站明确一点 vue的响应式系统不支持Map和Set&#xff0c;也就是说&#xff0c;当Map与Set里面的元素变化时Vue追踪不到这些变化&#xff0c;因此无法做出响应。 如下demo其实是不会进行数据相应的 <h1 v-for"(item,index) in mySetAsList" :key"index"&…

明确一点

vue的响应式系统不支持Map和Set,也就是说,当Map与Set里面的元素变化时Vue追踪不到这些变化,因此无法做出响应

如下demo其实是不会进行数据相应的

<h1 v-for="(item,index) in mySetAsList" :key="index">{{item}}</h1>
<button @click="add">按钮</button>data() {return {i: 1,mySetChangeTracker: 1,mySet: new Set(),}}computed: {mySetAsList() {console.log(...this.mySet)let x = this.mySetChangeTrackerreturn [...this.mySet];}
},methods: {add() {this.mySet.add(this.i++);this.mySetChangeTracker += 1;}}

如何让map和set可以响应

1、创建一个可以相应的简单数据结构,利用vue已有的api,将这个简单数据结构和map或者set关联起来
2、需要创建此结构的可序列化副本并将其暴露给Vue

<h1 v-for="(item,index) in mySetAsList" :key="index">{{item}}</h1>
<button @click="add">按钮</button>data() {return {i: 1,mySetChangeTracker: 1,mySet: new Set(),}}computed: {mySetAsList() {let x = this.mySetChangeTrackerconsole.log(...this.mySet)return [...this.mySet];}
},methods: {add() {this.mySet.add(this.i++);this.mySetChangeTracker += 1;}}

也可以确定一下vue计算属性的用法:只要计算属性中用到了响应式数据,响应式数据发生变化,其实也就会触发到该计算属性使用到的地方(并不是必须返回一个响应式数据)

计算属性的set,get用法

当触发add方法时视图层会由 XiaoMing 变化为 ZhangMing,本质上就是响应式数据变化触发了计算属性的get方法


<h1>{{fullName}}</h1>data: function() {return {firstName: 'Xiao',lastName: 'Ming'};
},computed: {fullName:{get(){//回调函数 当需要读取当前属性值是执行,根据相关数据计算并返回当前属性的值return this.firstName + ' ' + this.lastName},set(val){//监视当前属性值的变化,当属性值发生变化时执行,更新相关的属性数据//val就是fullName的最新属性值console.log(val)const names = val.split(' ');console.log(names)this.firstName = names[0];this.lastName = names[1];}}},methods: {add() {this.firstName = "Zhang"}}

当触发add方法时(给计算属性赋值),此时会触发计算属性的set方法,set函数中是可以对响应式数据进行一些处理的,如下代码

set =>改变响应式数据 =>响应式数据变化又触发了计算属性的get
add方法触发时界面显示Zhang fan

data: function() {return {firstName: 'Foo',lastName: 'Bar'};
},computed: {fullName:{get(){//回调函数 当需要读取当前属性值是执行,根据相关数据计算并返回当前属性的值return this.firstName + ' ' + this.lastName},set(val){//监视当前属性值的变化,当属性值发生变化时执行,更新相关的属性数据//val就是fullName的最新属性值console.log(val)const names = val.split(' ');console.log(names)this.firstName = names[0];this.lastName = names[1];}}},methods: {add() {this.fullName = "Zhang fan"}

计算属性特点

1、具有缓存性,页面重新渲染值不变化,计算属性会立即返回之前的计算结果,而不必再次执行函数
2、是计算值,
3、应用:就是简化tempalte里面{{}}计算和处理props或$emit的传值

http://www.15wanjia.com/news/184343.html

相关文章:

  • 网站内容维护合同wordpress 首行缩进 插件
  • 网站手机端生成百度站长验证网站失败
  • 网站宽度 自动收缩内容型网站有哪些
  • 宝塔如何添加ip域名做网站wordpress
  • 对电子商务网站与建设的心得酒店管理系统
  • 帮别人做网站维护违法上海城隍庙在哪个区
  • seo怎么优化网站排名百度禁止seo推广
  • 用电脑做服务器制作网站参考网是正规网站吗
  • 洛阳网站建设官网对电子商务网站建设与管理的理解
  • 衡水做wap网站的公司wordpress app后端
  • 橱柜网站源码淘乐惠网站怎么做
  • 网站备案为什么要关闭公司官网怎么弄
  • 网站开发提成东营造价信息网官网
  • 三网合一 网站小清新网站源码
  • 百度爱采购网站官网可信网站认证有必要吗
  • 网站开发外包 验收网站建设深圳亿联时代
  • 重庆市城市建设档案馆官方网站网页和网站的区别和联系
  • 网站建设软件是什么市场调研的四个步骤
  • 全球最受欢迎的网站wordpress生成ios app
  • 时尚网站设计手机产品展示网站模板
  • wordpress做在线编辑图片优化关键词的方法包括
  • 个人备案 可以做企业网站吗网站可以做的活动推广
  • 邯郸网站建设渠道摄影网站的模板
  • 建立网站纯文字版本企业网站管理系统用户
  • 网站页面优化方法有哪些内容wordpress pot 汉化
  • 用.net编写网站响应式网站一般做几个版本
  • 自学网站免费浙江华企做网站
  • 做游戏的网站的公司网页设计与制作广东开放大学
  • app与网站的区别是什么做一个小网站需要多少钱
  • wordpress 目录 导航seo大神做的网站