【问题标题】:Ionic 3 application not compilingIonic 3 应用程序未编译
【发布时间】:2019-09-30 20:31:34
【问题描述】:

我在 Ionic3 和 firebase 中创建了一个 Ionic 应用程序,它可以在我自己的 PC 上完美运行,但我的朋友一运行它,它就无法运行。他收到以下错误

运行时错误
NgModule 'AppModule' 的提供者无效 - 只允许提供 Provider 和 Type 的实例,得到:[StatusBar, SplashScreen, [object Object], AuthProvider, AngularFireAuth, UserProvider, ImghandlerProvider, ?[object Object]?, ...]

堆栈
错误:NgModule 'AppModule' 的提供程序无效 - 只允许提供 Provider 和 Type 的实例,得到:[StatusBar, SplashScreen, [object Object], AuthProvider, AngularFireAuth, UserProvider, ImghandlerProvider, ?[object Object]?, ... ]

这是我项目中的app.module.ts 文件

    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 { config } from './app.firebaseconfig';

    import { AngularFireAuth } from 'angularfire2/auth';
    import { AngularFireModule } from 'angularfire2';

    import { MyApp } from './app.component';
    import { AuthProvider } from '../providers/auth/auth';
    import { UserProvider } from '../providers/user/user';
    import { ImghandlerProvider } from '../providers/imghandler/imghandler';
    import { File } from '@ionic-native/file/ngx';
    import { FileChooser } from '@ionic-native/file-chooser';
    import { FilePath } from '@ionic-native/file-path/ngx';
    import { RequestsProvider } from '../providers/requests/requests';
    import { ChatProvider } from '../providers/chat/chat';
    import { GroupsProvider } from '../providers/groups/groups';
    import { CommandProvider } from '../providers/command/command';


    @NgModule({
      declarations: [
        MyApp
      ],
      imports: [
        BrowserModule,
        IonicModule.forRoot(MyApp, {tabsPlacement: 'top'}),
        AngularFireModule.initializeApp(config)
      ],
      bootstrap: [IonicApp],
      entryComponents: [
        MyApp
      ],
      providers: [
        StatusBar,
        SplashScreen,
        {provide: ErrorHandler, useClass: IonicErrorHandler},
        AuthProvider,
        AngularFireAuth,
        UserProvider,
        ImghandlerProvider,
        FileChooser,
        File,
        FilePath,
        RequestsProvider,
        ChatProvider,
        GroupsProvider,
        CommandProvider
      ]
    })
    export class AppModule {}

知道为什么会这样吗?感谢您的帮助

【问题讨论】:

    标签: angular ionic-framework ionic3


    【解决方案1】:

    请检查您当前的系统环境。我可能是 ionic 和 node 的最新版本 你需要降级你的 ionic 和 node 版本才能兼容。接下来删除 node_modules 文件夹并删除 packg-lock.json 文件并运行

    npm i
    

    运行之后

     npm rebuild node-sass
    

    运行后,成功运行

    npm i firebase@current_verion_in_your_packg.json
    

    干杯

    【讨论】:

      【解决方案2】:

      请检查您的包和进口。有 ionic 4 和 ionic 3 原生包的混合。如果您使用的是 ionic 3,那么您有一些适用于 ionic 4 的本机包,即所有以 ngx 结尾的包,它们适用于 ionic 4。因此以下内容不正确:

      import { File } from '@ionic-native/file/ngx';
      import { FilePath } from '@ionic-native/file-path/ngx';
      

      请通过查看有关如何安装它们的 ionic 3 文档来删除并重新安装它们,例如 File 上的文档

      【讨论】:

        猜你喜欢
        • 2017-11-25
        • 1970-01-01
        • 1970-01-01
        • 2014-03-16
        • 1970-01-01
        • 1970-01-01
        • 2023-03-03
        • 1970-01-01
        • 2018-01-16
        相关资源
        最近更新 更多