angular - Angular ContentChildren 访问和操作
问题描述
我有一个组件,ng-content
用于传递将在屏幕上输出的元素列表。我想使用 ng-content 以便实现列表的父组件可以确定列表元素的样式。实现时看起来像这样:
<!-- app.component.html -->
<list-component>
<li #result *ngFor="result of results$ | async"> { result.title } </li>
</list-component>
和 List 组件类:
<!-- list.component.ts -->
export class ListComponent {
@ContentChildren('result') results: QueryList<ElementRef>;
}
ngAfterContentInit() {
this.results.changes.subscribe((changes: any) => console.log(changes))
}
更改会记录到控制台,但是一旦我将引用变量添加#result
到 中的li
元素app.component.html
,则li
不再显示内容。它仍然为每个li
元素显示一个项目符号,但result.title
不再显示。
这是为什么?我该怎么做才能让这些出现?
我的最终目标是ListComponent
使用ContentChildren
变量并遍历元素并在该元素中加粗搜索词li
。因此,如果搜索词是“test”,结果是“contest”、“testing”等,那么每个单词的“test”部分将加粗,不匹配的部分将保持正常。我想要ListComponent
处理那部分。
这是正确的方法吗?
解决方案
推荐阅读
- xamarin.android - 带有 Android NDK r17b 的 VS 2017 中出现 TRK0002 错误
- r - Iterate over ID column, creating a new graph for each unique ID
- makefile - 退出递归make中的第一个错误
- amazon-web-services - 如何使用 Cloudformation 部署 RDS Serverless Aurora
- swift - 为下一个视图控制器调用选定索引
- node.js - 使用对话模型对 AMAZON.NUMBER 类型进行 Alexa 输入验证
- shell - 如何在配置单元中使用文件中的列名
- sdl - SDL_PollEvent prevents render unless window moved or resized
- java - 子类 completableFuture 和 CompletableFuture.Allof 最终不起作用
- php - 处理 PHP 数组时截断的结果