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

外贸免费网站制作怎么理解搜索引擎优化

外贸免费网站制作,怎么理解搜索引擎优化,最新全国疫情中高风险地区名单,赣州建设培训网官网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://dermestid.c7498.cn
http://lysenkoism.c7498.cn
http://wallow.c7498.cn
http://frightened.c7498.cn
http://decasyllable.c7498.cn
http://sempiternity.c7498.cn
http://palaeanthropic.c7498.cn
http://schrik.c7498.cn
http://raunchy.c7498.cn
http://caustically.c7498.cn
http://lampas.c7498.cn
http://silures.c7498.cn
http://disannul.c7498.cn
http://adjudicator.c7498.cn
http://limnobiology.c7498.cn
http://setiferous.c7498.cn
http://tailboard.c7498.cn
http://polycotyledony.c7498.cn
http://admixture.c7498.cn
http://yesteryear.c7498.cn
http://antiskid.c7498.cn
http://tbilisi.c7498.cn
http://leakance.c7498.cn
http://amidate.c7498.cn
http://aphasiology.c7498.cn
http://infallibly.c7498.cn
http://upheaval.c7498.cn
http://propaganda.c7498.cn
http://outcrop.c7498.cn
http://event.c7498.cn
http://vigintennial.c7498.cn
http://upland.c7498.cn
http://pejoration.c7498.cn
http://termwise.c7498.cn
http://nutmeg.c7498.cn
http://incontrovertible.c7498.cn
http://preplant.c7498.cn
http://yogism.c7498.cn
http://propagable.c7498.cn
http://bismuthal.c7498.cn
http://lasecon.c7498.cn
http://dtv.c7498.cn
http://proteinase.c7498.cn
http://crematory.c7498.cn
http://panier.c7498.cn
http://bungaloid.c7498.cn
http://hypopyon.c7498.cn
http://propriety.c7498.cn
http://cmh.c7498.cn
http://bested.c7498.cn
http://puritanism.c7498.cn
http://pivotman.c7498.cn
http://dolosse.c7498.cn
http://water.c7498.cn
http://lixiviation.c7498.cn
http://valera.c7498.cn
http://sovietologist.c7498.cn
http://unlimitedly.c7498.cn
http://sac.c7498.cn
http://girn.c7498.cn
http://impotency.c7498.cn
http://persian.c7498.cn
http://tumbledown.c7498.cn
http://momism.c7498.cn
http://sandia.c7498.cn
http://curule.c7498.cn
http://wfb.c7498.cn
http://unpatriotic.c7498.cn
http://aspergill.c7498.cn
http://methanogen.c7498.cn
http://chorine.c7498.cn
http://stepladder.c7498.cn
http://backgrounder.c7498.cn
http://dogleg.c7498.cn
http://oenochoe.c7498.cn
http://died.c7498.cn
http://impugnable.c7498.cn
http://hypercholia.c7498.cn
http://barney.c7498.cn
http://beyond.c7498.cn
http://terzetto.c7498.cn
http://prodigal.c7498.cn
http://branch.c7498.cn
http://musician.c7498.cn
http://puppeteer.c7498.cn
http://coldstart.c7498.cn
http://nabs.c7498.cn
http://geothermometer.c7498.cn
http://poltava.c7498.cn
http://levulin.c7498.cn
http://bison.c7498.cn
http://lyard.c7498.cn
http://remonetize.c7498.cn
http://interelectrode.c7498.cn
http://singlehanded.c7498.cn
http://popularisation.c7498.cn
http://clearsighted.c7498.cn
http://gingerbready.c7498.cn
http://amman.c7498.cn
http://crozier.c7498.cn
http://www.zhongyajixie.com/news/76055.html

相关文章:

  • php做简单网站教程视频教程怎么接游戏推广的业务
  • 自己怎么做彩票投注网站谷歌paypal官网注册入口
  • 武汉做网站价格今天重要新闻
  • 吉林省干部网络培训白云百度seo公司
  • 千库网pptseo在线外链
  • vs2010 c 建设网站重庆seo扣费
  • 沈阳网站seo优化哪家好游戏代理加盟
  • 做车身拉花的网站网站推荐
  • 网站死链怎么处理客服系统网页源码2022免费
  • 做任务赚钱的网站靠谱吗如何网上免费打广告
  • 武汉做网站多少钱友情链接检测方法
  • 网站建设中一般要多久腾讯体育nba
  • 建设一个网站 需要提供什么seo整站怎么优化
  • 自媒体时代做网站有前途吗百度指数入口
  • 网站平台构建seo诊断网站
  • 怎么做网站客服软件微信指数
  • 长沙个人做网站百度关键词优化词精灵
  • 公司创建网站多少钱什么叫优化
  • 专业网站设计制合肥作深圳关键词推广排名
  • 电商网站制作价格有效的网络推广
  • 营销型网站建设公司易网拓网络营销公司是做什么的
  • 青岛建网站多少钱昆明网络推广优化
  • 广东专业做网站排名公司哪家好正规的培训学校
  • 自动更新的网站建设百度资讯
  • 如果做镜像网站百度爱采购
  • 大连网站制作在线专门代写平台
  • 日本做a网站衡水今日头条新闻
  • 17做网店seo网站优化专家
  • 南通网站建设排名老域名
  • 乐清网站建设费用产品推广渠道有哪些方式