在模块 ts 中输入提供程序时出错

Error while entering provider in module ts

当我尝试在提供商中 import nativepagetransition 时,它显示错误。

import { BrowserModule } from '@angular/platform-browser';
import { ErrorHandler, NgModule } from '@angular/core';
import { IonicApp, IonicErrorHandler, IonicModule } from 'ionic-angular';
import { SplashScreen } from '@ionic-native/splash-screen';
import { StatusBar } from '@ionic-native/status-bar';
import { LinkPage } from '../pages/link/link';
import { NativePageTransitions } from '@ionic-native/native-page-transitions';

import { MyApp } from './app.component';
import { HomePage } from '../pages/home/home';

@NgModule({
declarations: [
MyApp,
HomePage,
LinkPage,


],
imports: [
BrowserModule,
IonicModule.forRoot(MyApp)
],
bootstrap: [IonicApp],
entryComponents: [
MyApp,
HomePage,
LinkPage

],
providers: [
StatusBar,
SplashScreen,
 NativePageTransitions,


 {provide: ErrorHandler, useClass: IonicErrorHandler}
 ]
 })
 export class AppModule {}

错误是,

Type ‘NativePageTransitionsOriginal’ is not assignable to type ‘Provider’.
Type ‘NativePageTransitionsOriginal’ is missing the following properties from type ‘FactoryProvider’: provide, useFactory [2322]]

您安装了最新的 @ionic-native/native-page-transitions (v5+)。

那么你应该从 @ionic-native/native-page-transitions/ngx

导入 NativePageTransitions
import { NativePageTransitions } from '@ionic-native/native-page-transitions/ngx';

如果您为您的项目类型安装了错误的本机插件版本,则会出现此错误。

检查ionic.config.json中的项目类型

如果类型是"ionic-angular",则安装4.x.x版本。

例子

npm i -s @ionic-native/native-page-transitions@4.20.0

如果类型是"angular",则安装5.x.x-测试版

npm i -s @ionic-native/native-page-transitions@5.0.0-beta.24

注:

仅当您使用 Angular 6

时才在导入末尾添加 ngx
import { NativePageTransitions } from '@ionic-native/native-page-transitions/ngx';

如果不在 app.module.ts 和 app.component.ts

中从导入中删除 ngx
import { NativePageTransitions } from '@ionic-native/native-page-transitions';

引用:https://github.com/ionic-team/ionic/issues/15225#issuecomment-414074074

ionic 4+中的所有本地模块和服务已移至ngx模块的目录。 喜欢

在离子 3:

We were importing NativePageTransitions from @ionic-native/native-page-transitions
import { NativePageTransitions } from '@ionic-native/native-page-transitions';

现在在 ionic 4+ 中:

We have to import native modules from @ionic-native/module-name/ngx directory.
import { NativePageTransitions } from '@ionic-native/native-page-transitions/ngx';