Ionic 的网络原生插件缺少提供程序
Posted
技术标签:
【中文标题】Ionic 的网络原生插件缺少提供程序【英文标题】:Missing provider for Ionic's Network native plugin 【发布时间】:2019-09-27 04:13:22 【问题描述】:我尝试过使用 Ionics 原生插件“Network”,但由于缺少提供程序而失败。为了避免任何错误,我安装了全新安装的 Ionic 和所需的依赖项:
ionic cordova plugin add cordova-plugin-network-information
npm install @ionic-native/network
然后我将依赖添加到 home 的构造函数中:
import Component from '@angular/core';
import Network from '@ionic-native/network/ngx';
@Component(
selector: 'app-home',
templateUrl: 'home.page.html',
styleUrls: ['home.page.scss'],
)
export class HomePage
constructor(private network: Network)
// to nothing ...
...执行ionic serve
后会得到如下错误信息:
ERROR Error: Uncaught (in promise):
Error: StaticInjectorError(AppModule)[HomePage -> Network]:
StaticInjectorError(Platform: core)[HomePage -> Network]:
NullInjectorError: No provider for Network!
Error: StaticInjectorError(AppModule)[HomePage -> Network]:
StaticInjectorError(Platform: core)[HomePage -> Network]:
NullInjectorError: No provider for Network!
系统信息
Ionic:
ionic (Ionic CLI) : 4.12.0 (/Users/samnowakowski/node_modules/ionic)
Ionic Framework : @ionic/angular 4.4.0
@angular-devkit/build-angular : 0.13.9
@angular-devkit/schematics : 7.3.9
@angular/cli : 7.3.9
@ionic/angular-toolkit : 1.5.1
Cordova:
cordova (Cordova CLI) : 9.0.0 (cordova-lib@9.0.1)
Cordova Platforms : none
Cordova Plugins : no whitelisted plugins (1 plugins total)
System:
android SDK Tools : 26.1.1 (/Users/admin/Library/Android/sdk)
NodeJS : v10.15.3 (/usr/local/bin/node)
npm : 6.9.0
OS : macOS Mojave
Xcode : Xcode 10.2.1 Build version 10E1001
【问题讨论】:
【参考方案1】:打开应用模块(app.module.ts)和下面的代码:
import Network from '@ionic-native/network/ngx';
@NgModule(
...
providers: [
Network
]
);
【讨论】:
谢谢。也许应该在文档中添加它。 :-) 在 ionic3 文档中添加了它,但在最新版本中未添加。在最新版本中大量的框架支持。只有角度需要它以上是关于Ionic 的网络原生插件缺少提供程序的主要内容,如果未能解决你的问题,请参考以下文章
从 Ionic NFC 插件读取标签提供的信息与我使用阅读器时不同
所有原生 cordova 插件都停止在 Ionic3 上工作
通过 perl 服务器提供 ionic vue 构建不起作用