html - 如何在 Angular 10 中使用动态组件创建动态 html?
问题描述
我已经仔细阅读了这些问题:Angular 2 中 $compile 的等效项以及如何使用/创建动态模板来使用 Angular 2.0 编译动态组件?
我试图理解这些问题中提到的这个 woring plunker中的代码。但是这个plunker不能再打开了。
就我而言,我需要动态生成html,而在生成的html中,还需要动态生成组件。
我创建了一个带有以下选项的选择:
<option>aaa {SingleSelect} bbb {text}</option>
<option>aaa {AutoComplete}</option>
<option>aaa {SingleSelect} bbb {text} ccc {MultiSelect}</option>
{...}表示动态组件,对于第一个选项,如果选择此选项,我应该将{SingleSelect}替换为 s 单选组件,并将{text}替换为输入文本。对于其余的aaa
bbb
,它只是简单的文本,应该显示为标签。
所以如果我选择第一个选项,它的视图应该和下面的代码一样:
<div>
<span>aaa</span>
<SingleSelect></SingleSelect>
<span>bbb</span>
<input type="text>
</div>
我所做的: 我创建了一个生成动态组件的指令,该指令将一个参数作为输入,如果参数是 SingleSelect,它将返回一个 SingleSelectComponent。
我遇到的问题:
我只能生成动态组件,但是如何将生成的组件应用到动态html中呢?
我尝试使用[innerHtml],但是由于innerHtml只能使用静态值,带有动态组件的内部html似乎不起作用。
stackblitz中的一个简单示例
有谁知道该怎么做?
解决方案
推荐阅读
- sql-server - 在 XML 中使用空值的 T-SQL
- algorithm - DP 问题 (IPL) 未通过 2 个测试用例
- excel - 将映射数据传输到另一个工作表而不是将其导出为 XML
- c# - 对“HttpContextBase”类型的引用声称它是在“System.Web”中定义的,但找不到
- opengl - GLSL 的 imageLoad() 总是返回 0?
- c# - 注销身份服务器
- android - Camera2 1440x1080 为最大值
- mysql - 如何在 save() 上从 Sequelize 获取 MySQL 自动增量主键?
- uber-api - Uber API /v1.2/products 端点超时
- apache - Apache 服务器出现故障,cURL 将其恢复几分钟