html - 无法使用在我自己的库中声明的元素之一
问题描述
我正在尝试创建一个可以使用其中的组件的库,但是 angular 说我使用的元素未被识别为元素。我正在尝试导出 VitalSignLinesListComponent。
我遵循的步骤是:
- 在库模块中声明组件
- 导出库模块中的组件
- 在公共 API 中导出组件
- 从库中导入模块
- 将元素放在 html 文件中
- 接收错误
我得到的错误:
src/app/app.component.html:2:1 中的错误 - 错误 NG8001:“lib-vital-sign-lines-list”不是已知元素:1. 如果“lib-vital-sign-lines-list”是一个 Angular 组件,然后验证它是这个模块的一部分。2. 如果“lib-vital-sign-lines-list”是一个 Web 组件,则将“CUSTOM_ELEMENTS_SCHEMA”添加到该组件的“@NgModule.schemas”以禁止显示此消息。
零件:
@Component({
selector: 'lib-vital-sign-lines-list',
templateUrl: './vital-sign-lines-list.component.html',
styleUrls: ['./vital-sign-lines-list.component.css']
})
export class VitalSignLinesListComponent implements OnInit {
@Input()
idEdDossier: string;
}
图书馆模块:
import { NgModule } from '@angular/core';
import { VitalsignsComponent } from './vitalsigns.component';
import { BrowserModule } from '@angular/platform-browser';
import { HttpClientModule } from '@angular/common/http';
import { RouterModule, Routes } from '@angular/router';
import { ModalInputComponent } from './modal-input/modal-input.component';
import { VitalSignLinesListComponent } from './vital-sign-lines-list/vital-sign-lines-list.component';
import { NgSelectModule } from '@ng-select/ng-select';
import { FormsModule } from '@angular/forms';
import { EcareLibModule } from 'ecarelib'
import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
import { ComboBoxComponent } from './combo-box/combo-box.component';
import { ComboBoxPipe } from './combo-box/combo-box.pipe';
import { LogService } from './services/log.service';
import { ClickOutsideDirective } from './vital-sign-lines-list/click-outside.directive';
const appRoutes: Routes = [
{ path: 'modal', component: ModalInputComponent },
{ path: 'vitalSignLinesList', component: VitalSignLinesListComponent }
];
// @dynamic
@NgModule({
declarations: [
VitalsignsComponent,
ModalInputComponent,
VitalSignLinesListComponent,
ComboBoxComponent,
ComboBoxPipe,
ClickOutsideDirective
],
imports: [
BrowserModule,
HttpClientModule,
EcareLibModule.forRoot(),
NgSelectModule,
RouterModule.forRoot(appRoutes, { enableTracing: false }),
FormsModule,
NgbModule
],
providers: [LogService],
exports: [VitalsignsComponent, VitalSignLinesListComponent]
})
export class VitalsignsModule {
}
公共API:
export * from './lib/vitalsigns.service';
export * from './lib/vitalsigns.component';
export * from './lib/vitalsigns.module';
export * from './lib/vital-sign-lines-list/vital-sign-lines-list.component';
导入库:(生命体征模块)
import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { NgSelectModule } from '@ng-select/ng-select';
import { FormsModule } from '@angular/forms';
import {NgbModule} from '@ng-bootstrap/ng-bootstrap';
import { AppComponent } from './app.component';
import { HttpClientModule } from '@angular/common/http';
import { RouterModule, Routes } from '@angular/router';
import { EcareLibModule } from 'ecarelib';
import { VitalsignsModule } from 'vitalsigns';
@NgModule({
declarations: [
AppComponent
],
imports: [
BrowserModule,
EcareLibModule.forRoot(),
HttpClientModule,
RouterModule.forRoot([]),
VitalsignsModule,
NgbModule,
NgSelectModule,
FormsModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule { }
HTML:
<lib-vital-sign-lines-list [idEdDossier]=idDossier></lib-vital-sign-lines-list>
解决方案
推荐阅读
- asp.net-web-api2 - Microsoft.CodeDom.Providers.DotNetCompilerPlatform(Roslyn 编译器)在 Web API 2 项目中有用吗?
- python - 如何在 C++ 中展平颜色直方图?
- javascript - Rate 组件的验证 ant.design
- php - PHP 是否可以减少类和构造函数中参数声明和初始化的重复?
- google-chrome - 测试浏览器(Firefox、Chrome、IE)和 HSTS
- r - 如何在模型保存文件中保存没有数据集的 R 模型
- tvos - 自定义子类collectionview - 调用preferredFocusEnvironments,但视图不聚焦
- javascript - Vue - 将方法作为道具传递给孩子
- python - 使用python进行光栅到点转换
- windows - 检测远程计算机重新启动并重新连接网络文件夹的脚本