为了账号安全,请及时绑定邮箱和手机立即绑定

关于vue父组件动态传参给子组件的问题

关于vue父组件动态传参给子组件的问题

问题是这样的,我在父组件里有个选择下拉框,默认选择第一个,每选择不一样的时候就要动态更新子组件。我可以在子组件里通过watch来动态的监听父组件传过来的数据,但是却改变不了子组件里的data里的初始化数据。因为这个初始化数据会影响页面,如图1,图中的输入框等都是通过动态数据加载出来的,不同的选择模板出来的文本框的数量类型都不一样,我用的是element ui的那个组件,如果不初始化就输入不了,所以想问下大家有没有可以动态更新子组件全部的,包括初始化这块这个是父组件代码:下面是子组件代码:我其实问题最主要的是子组件里的文本框的数量是根据contractTemplateDetail里返回的数据决定的,会给我返回一个数组,数组的长度决定输入框的数量,而子组件的data里会对contractTemplateDetail的数据进行遍历然后会给输入框做一个初始化,只有做了初始化文本框才能正常输入,我监听了contractTemplateDetail这个也只能改变这个数据,但是初始化只做一次呢,也就是data里遍历做初始化只有一开始一次,后面的动态改变都不能再初始化呢,我想问大家有没有好的办法
查看完整描述

3 回答

?
动漫人物

TA贡献1815条经验 获得超10个赞

你在template里面用v-if或者v-show这种先写好所有模板,然后改变对应的true值来使用不同的模板应该可以的


查看完整回答
反对 回复 2019-03-20
?
翻翻过去那场雪

TA贡献2065条经验 获得超14个赞

你的watch的代码呢? 这个要再watch里进行处理的。要看你的代码 watch


查看完整回答
反对 回复 2019-03-20
  • 3 回答
  • 0 关注
  • 3295 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信