尝试使用 ng-packagr 创建库。
我运行的内部项目:
ng g library nt-select --prefix nt
在 nt-select.component.ts 里面
import { Component, OnInit } from '@angular/core';
@Component({
selector: 'nt-nt-select',
template: `
<mat-form-field>
<mat-select [placeholder]="placeholder" [disabled]="disabled" [multiple]="multiple" [(ngModel)]="value"
[required]="required">
<ngx-mat-select-search *ngIf="searchable"
[formControl]="optionFilterCtrl"
[placeholderLabel]="'Axtar'"
[noEntriesFoundLabel]="'Tapılmadı'"
[clearSearchInput]="false"
></ngx-mat-select-search>
<mat-option *ngFor="let opt of filteredOptions$ | async" [value]="opt.value">
{{opt.label}}
</mat-option>
</mat-select>
<mat-error>{{getErrors('hobbies')}}</mat-error>
</mat-form-field>
`,
styles: []
})
export class NtSelectComponent implements OnInit {
constructor() { }
ngOnInit() {
}
}
和 nt.select.module:
import { NgModule } from '@angular/core';
import { NtSelectComponent } from './nt-select.component';
import {CommonModule} from '@angular/common';
import {BrowserAnimationsModule} from '@angular/platform-browser/animations';
import {FormsModule, ReactiveFormsModule} from '@angular/forms';
import {MatSelectModule} from '@angular/material';
import {NgxMatSelectSearchModule} from 'ngx-mat-select-search';
@NgModule({
imports: [
CommonModule,
BrowserAnimationsModule,
MatSelectModule,
NgxMatSelectSearchModule,
ReactiveFormsModule,
FormsModule
],
declarations: [NtSelectComponent],
exports: [NtSelectComponent]
})
export class NtSelectModule { }
问题是 nt-select 发出错误找不到mat-form-field、mat-select、ngx-mat-select-search 的名称 ,即使我导入了所有模块。
以下教程:https
://blog.angularindepth.com/creating-a-library-in-angular-6-87799552e7e5
可能有什么问题?
提前致谢