<customeComponet
:propA="needPropA ? dataA : null">
</customeComponet>
···
data () {
return {
dataA: {},
needPropA: false
}
}
现在的问题是 当不满足needPropA的时候,直接不传propA,除了写两次customComponent然后用v-if控制这种方法还有没有其他处理的办法?
<customeComponet
:propA="needPropA ? dataA : null">
</customeComponet>
···
data () {
return {
dataA: {},
needPropA: false
}
}
现在的问题是 当不满足needPropA的时候,直接不传propA,除了写两次customComponent然后用v-if控制这种方法还有没有其他处理的办法?
楼上说的对,这个问题的核心不在于 是否传递prop
,而在于 某个prop不传时如何处理
,楼主已经贴出来的代码已经基本实现了,对于子组件因为 prop
有值的时候传递需要处理,这个逻辑是必须的,所以代码是一定指定了接受相应 prop
并做处理,只需要再添加当值为 undefined/null
的兼容处理逻辑就行。
9 回答1.6k 阅读✓ 已解决
6 回答908 阅读
3 回答1.3k 阅读✓ 已解决
4 回答919 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
3 回答832 阅读
3 回答1.3k 阅读✓ 已解决
在vue里不传和传undefined是等价的,子组件定义的props父组件不传也会被枚举到(值为undefined,刚刚测试)