Ionic framework 爱奥尼亚,管道';翻译';无法找到,只能在AoT编译器中找到

Ionic framework 爱奥尼亚,管道';翻译';无法找到,只能在AoT编译器中找到,ionic-framework,ngx-translate,Ionic Framework,Ngx Translate,当我试图构建一个生产版本时,我在Ionic应用程序中遇到了ngx翻译的问题 在开发过程中,翻译可以很好地与 ionic serve 及 但是如果我尝试使用 ionic cordova build android --prod --release 或者是PWA ionic build --prod 我有一些错误,比如 [17:47:15] typescript error The pipe 'translate' could not be found ( ...

当我试图构建一个生产版本时,我在Ionic应用程序中遇到了ngx翻译的问题

在开发过程中,翻译可以很好地与

ionic serve

但是如果我尝试使用

ionic cordova build android --prod --release
或者是PWA

ionic build --prod
我有一些错误,比如

[17:47:15]  typescript error 
            The pipe 'translate' could not be found ( ... )
版本:

  • ngx翻译:8.0.0
  • 离子型:3.9.2
  • 角度:5.2.10
我检查了一下:没有发现我做错了什么

在app.module中:

// https://github.com/ngx-translate/core#1-import-the-translatemodule
// AoT requires an exported function for factories
export function createTranslateLoader(http: Http) {
    return new TranslateHttpLoader( http, './assets/i18n/', '.json' );
} 

@NgModule( {
    ...
    imports: [
        ...
        TranslateModule.forRoot( {
                loader: {
                    provide: TranslateLoader,
                    useFactory: (createTranslateLoader),
                    deps: [ Http ]
                }
            }
        ),
        ...
在我的一页中,产生了这个错误:

import {  TranslateModule, TranslateService, TranslatePipe } from '@ngx-translate/core';

@NgModule({
    imports: [
        TranslateModule
    ],
    exports: [
        TranslateModule
    ]
})
export class ContactPage { ... }

搜索SO主要产生了在页面中导入和导出TranslateModule以及导入TranslatePie的提示,但这两个更改都没有解决我的问题。如何配置翻译模块,使其在生产版本中工作?

好的,解决了这个问题。我将TranslateModule的导入和导出语句添加到page类中,但正确的做法是将其添加到相应的模块中

在我的例子中:

错:

contact.ts

@NgModule({
    imports: [
        TranslateModule
    ],
    exports: [
        TranslateModule
    ]
})
export class ContactsPage {...}
正确:

contact.module.ts

@NgModule( {
    ...
    imports : [
        ...
        TranslateModule
    ],
    exports : [
        TranslateModule
    ]

} )
export class ContactsPageModule {
}
@NgModule( {
    ...
    imports : [
        ...
        TranslateModule
    ],
    exports : [
        TranslateModule
    ]

} )
export class ContactsPageModule {
}