在有角度的应用程序中,我想多次使用同一组件。
被多次使用的组件是DynamicFormBuilderComponent
,它已在DynamicFormModule
中导出。.
这里的应用程序处于库结构中,因此我为每个应用程序都有一个单独的模块。
DynamicFormModule 具有以下内容,
import { NgModule } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { DynamicFormBuilderComponent } from './dynamic-form-builder/dynamic-form-builder.component';
@NgModule({
imports: [
BrowserModule
],
declarations: [DynamicFormBuilderComponent],
exports: [DynamicFormBuilderComponent],
entryComponents : [DynamicFormBuilderComponent]
})
export class NgiDynamicFormsModule { }
所以这是父项,我想在另一个库中的任何组件中使用 DynamicFormBuilderComponent ,
说我将在DynamicFormBuilderComponent
库中使用此Template
,并在需要的地方使用其他任何库的组件。
所以我试图在{strong> SharedModule 中导入NgiDynamicFormsModule
。共享模块具有以下内容,
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { NgiDynamicFormsModule } from 'projects/ngi-dynamic-forms/src/public_api';
@NgModule({
imports: [
CommonModule,
NgiDynamicFormsModule
],
declarations: [],
exports: [NgiDynamicFormsModule],
})
export class SharedModule { }
我正在尝试将共享模块导入名为NgiTemplate
的库中,
import { CommonModule } from '@angular/common';
import { NgiTemplateComponent } from './ngi-template.component';
import { SharedModule } from 'src/app/shared/shared.module';
@NgModule({
imports: [
CommonModule,
SharedModule
],
declarations: [NgiTemplateComponent],
exports: [NgiTemplateComponent],
entryComponents : [NgiTemplateComponent]
})
export class NgiTemplateModule {
}
如果我按照这些步骤操作,那么我将得到错误提示,
Uncaught Error: Unexpected value 'undefined' imported by the module 'SharedModule'
at syntaxError (compiler.js:1021)
at compiler.js:10610
at Array.forEach (<anonymous>)
at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver.getNgModuleMetadata (compiler.js:10579)
at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver.getNgModuleSummary (compiler.js:10514)
at compiler.js:10601
at Array.forEach (<anonymous>)
at CompileMetadataResolver.push../node_modules/@angular/compiler/fesm5/compiler.js.CompileMetadataResolver.getNgModuleMetadata (compiler.js:10579)
at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._loadModules (compiler.js:24428)
at JitCompiler.push../node_modules/@angular/compiler/fesm5/compiler.js.JitCompiler._compileModuleAndComponents (compiler.js:24409)
我也一直在认真地寻找解决方案,但没有任何解决方案。
请帮助我清除此错误并在任何模块中使用dynamicform构建器组件。
答案 0 :(得分:0)
您已从SharedModule
开始的路径中导入src/
。尝试将路径更改为相对路径:以./../
开头的内容。还要在SharedModule中更改导入语句。