[英]Dynamically rendering ember component
我希望在更改控制器属性时使用不同的属性重新渲染组件。 所以,我有我的代码,
{{#if (eq diffView "type1")}}
{{comp/mycomp diffId=diffFile.id diffIdPrefix=diffView view=diffView thisCtrl=thisCtrl commitDiff=diffFile.diff filePath=diffFile.fileName}}
{{else}}
{{comp/mycomp diffId=diffFile.id diffIdPrefix=diffView view="line-by-line" thisCtrl=thisCtrl commitDiff=diffFile.diff filePath=diffFile.fileName}}
{{/if}}
更改diffView属性,会引发类似以下错误:
vendorrepository.js:13602未捕获的DOMException:无法在“节点”上执行“ removeChild”:要删除的节点不是该节点的子节点。 在clear(...)在UpdatableBlockTracker.reset(...)在TryOpcode.handleException(...)
此错误是在ember源代码内部。 我认为尝试删除较旧的组件时出错。 请帮我解决这个问题。
您是否尝试过以下方法:
{{comp/mycomp
diffId=diffFile.id
diffIdPrefix=diffView
view=(if (eq diffView "type1") diffView "line-by-line")
thisCtrl=thisCtrl
commitDiff=diffFile.diff
filePath=diffFile.fileName
}}
这个想法是将if
仅放在变化的属性上
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.