繁体   English   中英

动态渲染余烬组件

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM