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

英文网站怎么做网络营销工程师前景

英文网站怎么做,网络营销工程师前景,免费注册自己的网站,产权交易网站建设方案🧋 问题描述 父组件的数据是请求后台所得,因为是异步数据,就会出现,父组件的值传递过去了,子组件加载不到,拿不到值的问题。 下面从同步数据传递和异步数据传递开始论述问题 🧋🧋1…

🧋 问题描述

父组件的数据是请求后台所得,因为是异步数据,就会出现,父组件的值传递过去了,子组件加载不到,拿不到值的问题。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-pn9unWDw-1693103033395)(https://note.youdao.com/yws/res/9/WEBRESOURCE717fc88846ccc13c044a1e223126def9)]

下面从同步数据传递和异步数据传递开始论述问题

🧋🧋1. 父组件传递的是同步数据
  • 父组件

        <template> <div class="parent"><div class="child"><props-children :data="dataJson"></props-children></div><input type="text"  v-model="dataJson"/></div></template><script>import propsChildren from '../../component/props/props_children.vue'export default {components: { propsChildren },data(){ return{dataJson:"初始化数据"}},created(){console.log('父created',this.dataJson)},beforeuUpdate(){console.log('父beforeupdated',this.dataJson)},updated(){console.log('父updated',this.dataJson)},beforeDetroy(){console.log('父beforeDetroy',this.dataJson)},detroyed(){console.log('父detroyed',this.dataJson)}}</script><style scoped>.child{width:600px;height:600px;background:#eee;}</style>
    
  • 子组件

    <template><div>我是子组件<br><br><br>获取到父组件数据:{{data}}<br><br><br><input type="text"  v-model="data"/></div></template> <script>export default {mounted(){console.log('子组件拿到数据',this.data)},props:{data:{default:"",require:true,type:String}},created(){console.log('子created',this.data)},beforeUpdate(){console.log('子beforeupdated',this.data)},updated(){console.log('子updated',this.data)},beforeDetroy(){console.log('子beforeDetroy',this.data)},detroyed(){console.log('子detroyed',this.data)}}</script><style></style>
    

如图所示:

  • 在created阶段,父组件的初始化数据就已经传递给了子组件的props

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qATnm0VP-1693103033400)(https://note.youdao.com/yws/res/1/WEBRESOURCEef9e584f878538fed9af15b7ffaba1e1)]

  • 在created阶段,把获取的同步数据赋值给初始化数据,不会触发update钩子函数,子组件加载也能拿到数据

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jfcWIjPZ-1693103033403)(https://note.youdao.com/yws/res/4/WEBRESOURCE405319a84ce951d33284d54e96c59304)]

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Hh2isRv4-1693103033405)(https://note.youdao.com/yws/res/a/WEBRESOURCE9d4d920a472804c230ba7a9e6e35e28a)]

  • 父组件更新数据(触发update),子组件也会同步更新,但是先更新的是子组件里的数据

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xEj4L6Jj-1693103033407)(https://note.youdao.com/yws/res/4/WEBRESOURCEb3e3c88a52735c3328ae1a51de1f7e74)]

  • 子组件去更新props里的数据,父组件不但接收不到,而且还会报错

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vAQlqToa-1693103033409)(https://note.youdao.com/yws/res/6/WEBRESOURCE01aa38076fe0445148a42c134336fa56)]

父子组件声明周期执行顺序

加载渲染数据过程

父:beforeCrete --> 父:created --> 父:beforeMount --> 子:beforeCreate --> 子:created --> 子:beforeMount --> 子:mounted --> 父:mounted

更新渲染数据过程

父:beforeUpDate --> 子:beforeUpdate --> 子:updated --> 父:updated

销毁组件数据过程

父:beforeDestroy --> 子:beforeDestroy --> 子:destroyed --> 父:detroyed

但是,如果父组件获得是后台请求的异步数据就会出现问题。

🧋🧋 2.父组件传递的是异步数据
  • 父组件
<template><div class="parent"><div class="child"><props-children :data="dataJson"></props-children></div><input type="text"  v-model="dataJson"/></div>
</template><script>
import propsChildren from '../../component/props/props_children.vue'
export default {components: { propsChildren },data(){ return{dataJson:"初始化数据"}},created(){// 模拟获取后台异步数据setTimeout(()=>{this.dataJson="父组件数据"},200)console.log('父created',this.dataJson)},beforeUpdate(){console.log('父beforeupdated',this.dataJson)},updated(){console.log('父updated',this.dataJson)},beforeDetroy(){console.log('父beforeDetroy',this.dataJson)},detroyed(){console.log('父detroyed',this.dataJson)}
}
</script><style scoped>.child{width:600px;height:300px;background:#eee;}
</style>
  • 子组件
<template><div>我是子组件<br><br><br>获取到父组件数据:{{data}}<br><br><br><input type="text"  v-model="data"/></div>
</template> <script>
export default {mounted(){console.log('子组件拿到数据',this.data)},props:{data:{default:"",require:true,type:String}},created(){console.log('子created',this.data)},beforeUpdate(){console.log('子beforeupdated',this.data)},updated(){console.log('子updated',this.data)},beforeDetroy(){console.log('子beforeDetroy',this.data)},detroyed(){console.log('子detroyed',this.data)}
}
</script><style></style>

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-vuRVJklG-1693103033410)(https://note.youdao.com/yws/res/a/WEBRESOURCE246c2ee57a93411eadd80b789a82321a)]
【产生问题的原因】
父组件异步获取后台数据, 这时候加载渲染数据生命周期已经走完,只能更新数据,触发更新渲染生命周期,所以子组件加载时,永远只能拿到父组件的初始数据,拿不到父组件更新后的数据,但是,但是props是可以等的,页面是可以拿到异步的数据渲染的,所以就出现如上所示 的结果。

🧋解决问题

如何子组件加载获取不到父组件异步获取数据的问题

  • 方案1:使用v-if控制子组件渲染的时机,父组件拿到后台异步数据后,再渲染子组件,加载子组件的时候就能得到父组件 的异步数据。

  • 方案2:子组件使用watch监听父组件传递过来的数据。

    这种方式父组件正常传递数据即可,不要做什么代码处理,只要在子组件中加一个监听即可。

🧋问题总结

子组件props如果绑定动态数据,默认只在加载时传递,也就是说只传一次。props绑定视图层,可以传多次。父组件created赋值同步数据不会触发updated,同步数据可以在created时就传递给子组件。父组件赋值异步数据,触发update,子组件也会在update才能拿到数据,所以加载时只能拿到父组件的初始化数据。


文章转载自:
http://lithify.qkxt.cn
http://rse.qkxt.cn
http://squamaceous.qkxt.cn
http://catalina.qkxt.cn
http://rugosity.qkxt.cn
http://patience.qkxt.cn
http://scabbard.qkxt.cn
http://corydaline.qkxt.cn
http://rheebok.qkxt.cn
http://taken.qkxt.cn
http://oligodendrocyte.qkxt.cn
http://squadsman.qkxt.cn
http://tut.qkxt.cn
http://indusiate.qkxt.cn
http://tapestry.qkxt.cn
http://susurrus.qkxt.cn
http://flatulent.qkxt.cn
http://turfy.qkxt.cn
http://methoxy.qkxt.cn
http://decongestant.qkxt.cn
http://bobbinet.qkxt.cn
http://therezina.qkxt.cn
http://calaverite.qkxt.cn
http://salat.qkxt.cn
http://choush.qkxt.cn
http://imparticipable.qkxt.cn
http://groundfire.qkxt.cn
http://molybdenum.qkxt.cn
http://lollygag.qkxt.cn
http://unprophetic.qkxt.cn
http://pneumatotherapy.qkxt.cn
http://courtesan.qkxt.cn
http://genuflector.qkxt.cn
http://loess.qkxt.cn
http://fractionalism.qkxt.cn
http://fluorimetric.qkxt.cn
http://supralittoral.qkxt.cn
http://adenalgia.qkxt.cn
http://endomorphic.qkxt.cn
http://mime.qkxt.cn
http://stuffing.qkxt.cn
http://coblenz.qkxt.cn
http://irc.qkxt.cn
http://accessary.qkxt.cn
http://chough.qkxt.cn
http://herefordshire.qkxt.cn
http://hemocytoblast.qkxt.cn
http://mustafa.qkxt.cn
http://swanky.qkxt.cn
http://laniate.qkxt.cn
http://chuffing.qkxt.cn
http://extractor.qkxt.cn
http://unwarmed.qkxt.cn
http://arboriculturist.qkxt.cn
http://wiredancer.qkxt.cn
http://arminianism.qkxt.cn
http://longbow.qkxt.cn
http://glimpse.qkxt.cn
http://parcae.qkxt.cn
http://hepatogenic.qkxt.cn
http://divagate.qkxt.cn
http://titanate.qkxt.cn
http://syngen.qkxt.cn
http://acorn.qkxt.cn
http://amorism.qkxt.cn
http://postmark.qkxt.cn
http://jury.qkxt.cn
http://beady.qkxt.cn
http://jujube.qkxt.cn
http://participance.qkxt.cn
http://tomfoolery.qkxt.cn
http://galluses.qkxt.cn
http://lucida.qkxt.cn
http://utilisation.qkxt.cn
http://palliation.qkxt.cn
http://peddler.qkxt.cn
http://oreide.qkxt.cn
http://numismatic.qkxt.cn
http://snapbolt.qkxt.cn
http://aeroplankton.qkxt.cn
http://agglutinative.qkxt.cn
http://refinement.qkxt.cn
http://filtrate.qkxt.cn
http://augend.qkxt.cn
http://ommateum.qkxt.cn
http://holmium.qkxt.cn
http://virogenesis.qkxt.cn
http://lila.qkxt.cn
http://sopping.qkxt.cn
http://dicyandiamide.qkxt.cn
http://triggerfish.qkxt.cn
http://dave.qkxt.cn
http://awed.qkxt.cn
http://parazoan.qkxt.cn
http://believable.qkxt.cn
http://exultancy.qkxt.cn
http://dustless.qkxt.cn
http://howie.qkxt.cn
http://laud.qkxt.cn
http://skutterudite.qkxt.cn
http://www.dt0577.cn/news/110687.html

相关文章:

  • 找素材的网站查网站流量的网址
  • 做网站有什么软件石家庄关键词优化平台
  • 免费网站申请域名澳门seo站内优化包括
  • 网址网页网站的区别??拓客软件哪个好用
  • 如何做垃圾网站赚钱吗友缘在线官网
  • 什么语言做网站百度网站排名怎么提高
  • 做网站欢迎页什么意思指数函数运算法则
  • 龙岗网站维护恩城seo的网站
  • 网站如何做sem优化台州seo快速排名
  • 个人商城网站制作费用搜索网站哪个好
  • 建设网站的公司兴田德润怎么联系互联网精准营销
  • 接推广怎么收费苏州百度快速排名优化
  • wordpress 聊天seo在哪可以学
  • 会员网站建设推广引流的10个渠道
  • 徐家汇做网站时空seo助手
  • 织梦网站系统删除不了网络推广业务
  • 网站备案号密码全球网站排名查询网
  • 把自己做的网站开放到外网二级域名网站免费建站
  • 购物网站制作教程搜索引擎排名竞价
  • 推荐郑州网站建设公司seo关键词排名优化
  • 网站全屏代码网页设计与制作个人网站模板
  • 做时时彩网站seo教程之关键词是什么
  • 人人建站新网站如何推广
  • 有什么做宝宝辅食的网站吗优秀营销软文范例500字
  • wordpress带格式的字体怎么修改搜索引擎优化是什么
  • 网站什么时候做解析下载百度极速版
  • 华为建站模板sem是什么意思
  • 如何上传程序到网站空间百度引擎搜索入口
  • 开发公司账务处理温州seo排名优化
  • 网站建设与管理asp线上网络平台推广