Javascript 如何延迟Angular 2中模板表达式的计算?
我不确定这个问题的措辞是否恰当。我试图做的是在父组件中写出一个模板表达式,并延迟其计算,直到我可以将其传递到子组件中 e、 g 父cmptJavascript 如何延迟Angular 2中模板表达式的计算?,javascript,angular,transclusion,Javascript,Angular,Transclusion,我不确定这个问题的措辞是否恰当。我试图做的是在父组件中写出一个模板表达式,并延迟其计算,直到我可以将其传递到子组件中 e、 g 父cmpt ... <search-results> <div>{{ item.title }}</div> <div>{{ item.id }} </div> </search-results> ... ... <li *ngFor="let item of data">
...
<search-results>
<div>{{ item.title }}</div>
<div>{{ item.id }} </div>
</search-results>
...
...
<li *ngFor="let item of data">
<ng-content select="search-results"></ng-content>
...
。。。
{{item.title}
{{item.id}
...
子cmpt
...
<search-results>
<div>{{ item.title }}</div>
<div>{{ item.id }} </div>
</search-results>
...
...
<li *ngFor="let item of data">
<ng-content select="search-results"></ng-content>
...
。。。
...
我不希望对{{item.title}
和{{{item.id}}
表达式求值,直到
元素被转包到子元素中。我该怎么做呢
更新
目前有一些黑客的解决方法,但目前还没有实现此解决方案的“正确”方法。
<search-results #parent>
<div>{{ parent.item.title }}</div>
<div>{{ parent.item.id }} </div>
</search-results>
{{parent.item.title}
{{parent.item.id}
目的是什么?你不希望项目
以这种方式引用ChildCmpt
吗?好主意,我没想过做这样的事情。但似乎不起作用。似乎投影的内容永远不会被渲染。我在生命周期的早期尝试将isTranscluded
prop设置为true,只是为了尝试一下,但没有效果。延迟渲染有什么意义?到目前为止对我来说没有意义。我代码中的
存在于ngFor
指令中。我们已经更新了原始帖子,使其更加清晰。无论您延迟绑定多长时间,这都不会更改用于绑定的类。我会更新我的答案。