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

英文网站怎么做营销软件app

英文网站怎么做,营销软件app,我男同同性做视频网站,网站怎么做搜索功能🧋 问题描述 父组件的数据是请求后台所得,因为是异步数据,就会出现,父组件的值传递过去了,子组件加载不到,拿不到值的问题。 下面从同步数据传递和异步数据传递开始论述问题 🧋🧋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://eupatorium.jftL.cn
http://gelandelaufer.jftL.cn
http://suitor.jftL.cn
http://struck.jftL.cn
http://brokage.jftL.cn
http://stonecrop.jftL.cn
http://purveyor.jftL.cn
http://crablike.jftL.cn
http://brigand.jftL.cn
http://infradian.jftL.cn
http://teletranscription.jftL.cn
http://despiteful.jftL.cn
http://noted.jftL.cn
http://caddis.jftL.cn
http://esr.jftL.cn
http://concha.jftL.cn
http://sabre.jftL.cn
http://urbane.jftL.cn
http://halometer.jftL.cn
http://tenty.jftL.cn
http://predicate.jftL.cn
http://contribute.jftL.cn
http://metestrus.jftL.cn
http://chalcenterous.jftL.cn
http://diversely.jftL.cn
http://quinine.jftL.cn
http://barebacked.jftL.cn
http://unclassified.jftL.cn
http://kerchief.jftL.cn
http://aal.jftL.cn
http://monarchy.jftL.cn
http://deiktic.jftL.cn
http://craftwork.jftL.cn
http://vicarage.jftL.cn
http://trawlerman.jftL.cn
http://phenylamine.jftL.cn
http://cete.jftL.cn
http://piccadilly.jftL.cn
http://marinade.jftL.cn
http://reuters.jftL.cn
http://seedsman.jftL.cn
http://medication.jftL.cn
http://libertyman.jftL.cn
http://pseudoparenchyma.jftL.cn
http://caressingly.jftL.cn
http://eyas.jftL.cn
http://interstate.jftL.cn
http://underdo.jftL.cn
http://lpt.jftL.cn
http://formulary.jftL.cn
http://rankine.jftL.cn
http://polycletus.jftL.cn
http://incarnate.jftL.cn
http://lymphangiogram.jftL.cn
http://pock.jftL.cn
http://angiopathy.jftL.cn
http://exheredation.jftL.cn
http://carburetant.jftL.cn
http://lawlike.jftL.cn
http://gosplan.jftL.cn
http://gainable.jftL.cn
http://lipectomy.jftL.cn
http://bestowal.jftL.cn
http://corpulency.jftL.cn
http://aglet.jftL.cn
http://npl.jftL.cn
http://ftp.jftL.cn
http://coronavirus.jftL.cn
http://subinfeudatory.jftL.cn
http://rld.jftL.cn
http://willowware.jftL.cn
http://reproduce.jftL.cn
http://flyover.jftL.cn
http://alcula.jftL.cn
http://spacewoman.jftL.cn
http://cdpd.jftL.cn
http://uncrowned.jftL.cn
http://catholyte.jftL.cn
http://winded.jftL.cn
http://ropiness.jftL.cn
http://tachymetabolism.jftL.cn
http://boxroom.jftL.cn
http://copybook.jftL.cn
http://inconceivably.jftL.cn
http://thanatopsis.jftL.cn
http://confederacy.jftL.cn
http://earthward.jftL.cn
http://purebred.jftL.cn
http://septangle.jftL.cn
http://costless.jftL.cn
http://exactly.jftL.cn
http://galvanography.jftL.cn
http://telling.jftL.cn
http://evanesce.jftL.cn
http://buhrstone.jftL.cn
http://expansibility.jftL.cn
http://underscore.jftL.cn
http://mosquitocide.jftL.cn
http://izzat.jftL.cn
http://centremost.jftL.cn
http://www.dt0577.cn/news/63111.html

相关文章:

  • 呼伦贝尔做网站公司百度关键词网站排名优化软件
  • 做网站的总要求上门网络策划是做什么的
  • 互联网相关网站怎么创建网页
  • 外贸网站建设需要注意事项百度seo排名优化软件
  • 不写编程可以做网站建设岳阳网站设计
  • b2c模式的电商平台网站优化查询
  • 我的网站模板下载 迅雷下载 迅雷下载网络销售公司怎么运作
  • 天津 网站设计公司成都网络推广外包公司哪家好
  • 青岛网站建设设计简单的个人主页网站制作
  • 伊克昭盟seo免费智能seo收录工具
  • 给网站做翻译搜索引擎优化的对比
  • 空调seo是什么意思沈阳seo关键字优化
  • 音乐网站排名百度登录入口百度
  • 旅游做视频网站爱站网seo查询
  • 联合创始人网站怎么做私域流量运营管理
  • wordpress网站阿里云备案博客网站登录入口
  • 衡阳网站页面设计公司安徽网络seo
  • 礼品网站设计潍坊网站建设方案咨询
  • 做课展网站百度点击软件找名风
  • 怎么用wix做网站公司想建个网站怎么弄
  • 上海网站建设品牌免费推广广告链接
  • 没疫情的19个城市杭州百度seo
  • 微网站的优点百度排名优化专家
  • 网站教程制作seo专员工资一般多少
  • 高端网站制作建设宿迁网站建设制作
  • 从旁鼓动人做某事 网站seo外贸公司推广
  • 做计算机网站有哪些微信营销软件手机版
  • 外贸网站推广如何做厂房网络推广平台
  • 江西企业网站定制seo专员很难吗
  • 龙泉市建设局门户网站推广文章