JKa*_*r11 7 javascript web-component angular angular-elements
我想使用 Angular Elements 创建一个 Web 组件库,该库具有默认模板,但允许开发人员覆盖输出。
例如,考虑一个搜索结果组件。我可能有一个如下所示的默认模板:
<h1>Search results for: {{query}}</h1>
Run Code Online (Sandbox Code Playgroud)
但开发人员可能希望将输出更改为此(作为任意示例 - 它需要灵活):
<h1>You searched for <strong>{{query}}</strong></h1>
Run Code Online (Sandbox Code Playgroud)
我的第一个想法是简单地使用ng-content这样的:
<search-results>
<h1>You searched for <strong>{{query}}</strong></h1>
</search-results>
Run Code Online (Sandbox Code Playgroud)
然而,这不起作用,并且会直接输出{{query}}.
然后我发现我可以TemplateRef在组件上添加一个输入参数并传入一个ng-template可以解析表达式的元素。这在 Angular 应用程序中运行良好,但我不确定如何使用 Angular Elements 生成的已编译 Web 组件在 Angular 上下文之外执行此操作。
谁能解释一下如何做到这一点?