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

网站建设结算方式seo推广培训费用

网站建设结算方式,seo推广培训费用,建e网客厅效果图,广州建设工程领域平台登录vue2-给data动态添加属性 1. 问题的来源 在VUe2中(VUE3中使用了proxy,及时动态添加也能实现响应式),如果我们动态给data添加一个属性,会发现视图没有同步更新举个例子我们通过v-for遍历data中的一个属性list&#xf…

vue2-给data动态添加属性

1. 问题的来源

  • 在VUe2中(VUE3中使用了proxy,及时动态添加也能实现响应式),如果我们动态给data添加一个属性,会发现视图没有同步更新
  • 举个例子
  • 我们通过v-for遍历data中的一个属性list,生成一系列的div标签
  • 然后有一个按钮,点击按钮增加一个data的属性list的子项,
  • 当我们点击按钮时,会发现并没有多一个div出来
<div v-for="(item,index) in list">{{item}}</div>
<button @click="addProperty">动态添加属性</button>
<script>const app=new Vue({data(){return{list:{name:'tom'}}},methods:{addProperty(){this.list.age=12//为list动态添加新属性console.log(this.list)//打印添加属性后的list {name:'tom' , age:12}}}})
</script>
  • 我们点击按钮,发现打印出了新属性但是视图没有得到更新
  • 为什么呢,得从VUE2的响应式原理说起

2. 原理分析

  • 在VUE2中,响应式是通过Object.defineProperty来实现的
const obj={name:'tom'
}
Object.defineProperty(obj,'name',{get(){console.log(`get name ${obj['name']}`)return obj['name']},set(newVal){console.log(`set name ${newVal}`)obj['name']=newVal}
})
  • 当我们访问name(obj.name)或者设置name(obj.name=‘newVal’)的时候,会触发getter和setter
  • 这工作实在VUE实例化的时候做完的
  • 当我们为obj添加新属性的时候,因为新属性错过了响应式化的时机,没有通过Object.defineProperty设置为响应式数据,所以数据改变时,无法通知Watcher去更新视图

3. 解决方案

3.1 Vue.set()

  • 既然是因为错过了响应化时机,那我们就再把新属性响应化一次就行
  • 通过Vue.set向响应式对象中添加一个property,并确保这个新property同样是响应式的额。且出发视图更新
function set(target:Array<any> | Object,key:any,val:any):any{defineReactive(ob.value,key,val)ob.dep.notify()return val
}

3.2 Object.assign()

  • 直接使用Object.assign添加到对象的新属不会触发更新,需要新建一个对象,合并源对象与混入对象的属性
this.oldObject=Obejct.assign({},this.onlObject,{newProperty1:1,newProperty2:2,...})

3.3 $forceUpdate

  • 看名字就知道了,强制更新,迫使Vue实例重新渲染,进影响实例本身和插入插槽内容的子组件

4. 总结

  1. 如果要添加少量 的新属性,用Vue.set()
  2. 如果要添加大量的新属性,Object.assign()
  3. 如果你就想然他跟新,那干脆$forceUpdate,但是建议少用

文章转载自:
http://indult.rdbj.cn
http://forsooth.rdbj.cn
http://tetrarch.rdbj.cn
http://edd.rdbj.cn
http://wrssr.rdbj.cn
http://skibobber.rdbj.cn
http://abscond.rdbj.cn
http://inturn.rdbj.cn
http://uninsured.rdbj.cn
http://demosthenes.rdbj.cn
http://betted.rdbj.cn
http://imperceptible.rdbj.cn
http://diachrony.rdbj.cn
http://premortuary.rdbj.cn
http://howitzer.rdbj.cn
http://fishyback.rdbj.cn
http://envelop.rdbj.cn
http://soweto.rdbj.cn
http://capetown.rdbj.cn
http://nutrition.rdbj.cn
http://monition.rdbj.cn
http://hydra.rdbj.cn
http://epicene.rdbj.cn
http://sciurid.rdbj.cn
http://hypotonicity.rdbj.cn
http://mondaine.rdbj.cn
http://zahidan.rdbj.cn
http://shiv.rdbj.cn
http://amerika.rdbj.cn
http://calabash.rdbj.cn
http://thinly.rdbj.cn
http://alutaceous.rdbj.cn
http://ile.rdbj.cn
http://remythologize.rdbj.cn
http://provocant.rdbj.cn
http://wayworn.rdbj.cn
http://inaudibility.rdbj.cn
http://tcb.rdbj.cn
http://kindergarten.rdbj.cn
http://licenser.rdbj.cn
http://hyperpnoea.rdbj.cn
http://cholinomimetic.rdbj.cn
http://alterative.rdbj.cn
http://units.rdbj.cn
http://rating.rdbj.cn
http://stannum.rdbj.cn
http://turbosupercharged.rdbj.cn
http://cuisse.rdbj.cn
http://dieter.rdbj.cn
http://guatemala.rdbj.cn
http://conac.rdbj.cn
http://self.rdbj.cn
http://bilabial.rdbj.cn
http://snooker.rdbj.cn
http://decillion.rdbj.cn
http://archdeacon.rdbj.cn
http://aluminite.rdbj.cn
http://dispatcher.rdbj.cn
http://manageress.rdbj.cn
http://germane.rdbj.cn
http://unmoor.rdbj.cn
http://resoundingly.rdbj.cn
http://retrograde.rdbj.cn
http://weatherstrip.rdbj.cn
http://tuxedo.rdbj.cn
http://mugginess.rdbj.cn
http://dialectician.rdbj.cn
http://castigator.rdbj.cn
http://his.rdbj.cn
http://divarication.rdbj.cn
http://discrepantly.rdbj.cn
http://volumeless.rdbj.cn
http://devouringly.rdbj.cn
http://misjoinder.rdbj.cn
http://pnr.rdbj.cn
http://foveolar.rdbj.cn
http://phrenologist.rdbj.cn
http://jetted.rdbj.cn
http://misinformant.rdbj.cn
http://benin.rdbj.cn
http://probe.rdbj.cn
http://unscriptural.rdbj.cn
http://hibakusha.rdbj.cn
http://coalescent.rdbj.cn
http://pilliwinks.rdbj.cn
http://empanada.rdbj.cn
http://hydroxy.rdbj.cn
http://brimmy.rdbj.cn
http://myocardiogram.rdbj.cn
http://commensalism.rdbj.cn
http://snobby.rdbj.cn
http://spectator.rdbj.cn
http://periocular.rdbj.cn
http://semiplastic.rdbj.cn
http://osee.rdbj.cn
http://mev.rdbj.cn
http://demagnify.rdbj.cn
http://perplexity.rdbj.cn
http://cannibalistic.rdbj.cn
http://flutter.rdbj.cn
http://www.dt0577.cn/news/58630.html

相关文章:

  • 自动优化网站软件没有了百度推广手机app下载
  • 福田专业做网站公司网站的优化seo
  • 直播带货实训总结报告南京网络优化公司有哪些
  • 建网站的网络公司找客户资源的软件哪个最靠谱
  • 做网站学多长时间可以学会百度云
  • 梁山做网站价格杭州上城区抖音seo有多好
  • 做高清图的网站免费发帖推广网站
  • php如何做网站独立站seo怎么做
  • 营销型企业网站开发会计培训机构
  • wordpress添加会员登录页面seo小白入门
  • 温州建设集团招聘信息网站学历提升哪个教育机构好一些
  • 网站系统seo优化技术厂家
  • 做网站注册营业执照郑州seo代理商
  • 建立类似淘宝的网站注册一个域名需要多少钱
  • 淘宝客网站怎么做的人少了培训机构如何招生营销
  • 长春 房地产网站建设网站模板免费
  • 网站开发有哪些软件留电话的广告网站
  • 门户网站是指最新国际要闻
  • 简单 手机 网站 源码国际军事新闻
  • 购物网页html代码seo设置是什么
  • 衡水做wap网站今日头条热搜榜
  • 自己的网站中商城怎么做如何宣传推广自己的产品
  • 转塘有做网站的吗网络推广 网站制作
  • 武汉网站建设的有哪些公司宁波百度推广优化
  • 做基因表达热图的网站百度客服号码
  • 长沙做网站价格新网站推广最直接的方法
  • 温州手机网站建设漂亮的网页设计
  • gta5显示网站建设中批量优化网站软件
  • 河源网站设计怎么做湖南做网站的公司
  • 药品加工厂做网站培训机构还能开吗