Angular 未找到e的组件工厂。您是否将其添加到@NgModule.entryComponents?
我最近将我的Ionic 3应用程序更改为延迟加载模式,但我在构建应用程序时遇到了一个问题。当我使用ionic serve运行应用程序时,它运行良好,但当我构建应用程序时,当splashscreen隐藏时,会显示此消息: 未找到e的组件工厂。您是否将其添加到@NgModule.entryComponents 以下任何脚本都会显示此消息:Angular 未找到e的组件工厂。您是否将其添加到@NgModule.entryComponents?,angular,typescript,ionic-framework,module,ionic3,Angular,Typescript,Ionic Framework,Module,Ionic3,我最近将我的Ionic 3应用程序更改为延迟加载模式,但我在构建应用程序时遇到了一个问题。当我使用ionic serve运行应用程序时,它运行良好,但当我构建应用程序时,当splashscreen隐藏时,会显示此消息: 未找到e的组件工厂。您是否将其添加到@NgModule.entryComponents 以下任何脚本都会显示此消息: "ionic:build:test-local6": "ionic-app-scripts build android", "ionic:build:test-l
"ionic:build:test-local6": "ionic-app-scripts build android",
"ionic:build:test-local5": "ionic-app-scripts build android --aot",
"ionic:build:test-local4": "ionic cordova build android --aot --optimizejs",
"ionic:build:test-local2": "ionic-app-scripts android --prod --release",
"ionic:build:test-local3": "ionic cordova build android --prod",
"ionic:build:test-local": "ionic cordova build android --prod --release",
这是我的应用程序脚本版本:
“依赖性”:{
“@IONAL/app脚本”:“^3.1.6”,
}
这是我的文件:
组件.模块.ts
import { NgModule } from '@angular/core';
import { IonicModule } from 'ionic-angular';
//Components
import * as Components from './components';
@NgModule({
entryComponents: [
Components.Component1,
Components.Component2,
Components.Component3
],
exports: [
Components.Component1,
Components.Component2,
Components.Component3
],
declarations: [
Components.Component1,
Components.Component2,
Components.Component3
],
imports: [
IonicModule
],
})
export class ComponentsModule {}
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import * as Pages from './../pages';
import { PipesModule } from '../../pipes/pipes.module';
import { ComponentsModule } from '../../components/components.module';
@NgModule({
exports: [
Pages.ChecklistPage,
],
declarations: [
Pages.ChecklistPage,
],
imports: [
ComponentsModule,
PipesModule,
IonicPageModule.forChild(Pages.ChecklistPage),
],
})
export class ChecklistPageModule {}
检查表.module.ts
import { NgModule } from '@angular/core';
import { IonicModule } from 'ionic-angular';
//Components
import * as Components from './components';
@NgModule({
entryComponents: [
Components.Component1,
Components.Component2,
Components.Component3
],
exports: [
Components.Component1,
Components.Component2,
Components.Component3
],
declarations: [
Components.Component1,
Components.Component2,
Components.Component3
],
imports: [
IonicModule
],
})
export class ComponentsModule {}
import { NgModule } from '@angular/core';
import { IonicPageModule } from 'ionic-angular';
import * as Pages from './../pages';
import { PipesModule } from '../../pipes/pipes.module';
import { ComponentsModule } from '../../components/components.module';
@NgModule({
exports: [
Pages.ChecklistPage,
],
declarations: [
Pages.ChecklistPage,
],
imports: [
ComponentsModule,
PipesModule,
IonicPageModule.forChild(Pages.ChecklistPage),
],
})
export class ChecklistPageModule {}
我一直在互联网上寻找我的问题的解决方案,但没有一个对我有效
更新:
我最近发现,对apk进行签名会导致此错误发生。非签名apk始终有效
这是我的签名脚本:
#Create signed apk
/c/Program\ Files/Java/jdk1.8.0_161/bin/jarsigner.exe -verbose -sigalg SHA1withRSA -digestalg SHA1 -storepass $password -keystore $keystorePath $releaseUnsignedPath $alias
#Rename and verify signed apk
$zipalignPath -f -v 4 $releaseUnsignedPath $releaseSignedApk
我发现了问题。这与模块配置无关。我没有引用应用程序上的一个页面链接
//this.navCtrl.setRoot(MenuPage);
this.navCtrl.setRoot('MenuPage');
无论如何感谢您的帮助:D我认为您需要将
入口组件添加到检查表.module.ts
@NgModule
部分完整的错误消息是什么?看起来像是AOT问题me@NitinP,但我应该在这些入口组件中添加什么?模块将要使用的组件?我用重要信息更新了我的问题