我正在使用Angular 7,并且正在使用“ ng-dynamic-component”库创建动态组件(请参见https://www.npmjs.com/package/ng-dynamic-component)。
我这样定义我的容器元素:
import { EventsListComponent } from 'projects/test/src/public_api';
eventsElement: ContainerElement = {
component: EventsListComponent,
inputs: {
Id: '584eaef3ce314feb9a3c93976fff7f30',
from: '2019-04-09T03:45:00Z',
to: '2019-04-26T06:50:00Z'
},
colspan: 2,
mobile_colspan: 1,
rowspan: 1,
}
并像这样使用它们:
<ndc-dynamic [ndcDynamicComponent]="eventsElement.component"
[ndcDynamicInputs]="eventsElement.inputs">
</ndc-dynamic>
这很好用。
现在,我想从 json 文件中读取组件的名称和输入参数:
{
"containerElements": [
{
"component": "EventsListComponent",
"inputs": {
"assetId": "584eaef3ce314feb9a3c93976fff7f30",
"from": "2019-04-09T03:45:00Z",
"to": "2019-04-26T06:50:00Z"
},
"colspan": 1,
"mobile_colspan": 1,
"rowspan": 1
}
]
}
我得到正确的值,但是,当然,我的组件现在只是一个字符串,而且我也没有该import语句。 我收到以下错误:
没有找到EventsListComponent的组件工厂。您是否将其添加到@ NgModule.entryComponents?
即使使用lib时,不必将其添加到entryComponents中,我也添加了它,但仍然是相同的错误。
有没有办法使这项工作成功?