首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >ionic-native/http发出错误“NullInjectorError:没有提供程序!”

ionic-native/http发出错误“NullInjectorError:没有提供程序!”
EN

Stack Overflow用户
提问于 2018-03-19 10:13:49
回答 2查看 3.3K关注 0票数 4

我使用的是ionic 3.2和angular,对于install HTTP (https://ionicframework.com/docs/native/http/),我使用以下命令:

代码语言:javascript
复制
ionic cordova plugin add cordova-plugin-advanced-http
npm install --save @ionic-native/http

在script autenticar.ts中,我按如下方式添加了import { HTTP } from '@ionic-native/http';

代码语言:javascript
复制
import { Component, ViewChild } from '@angular/core';
import { NavController } from 'ionic-angular';
import { HTTP } from '@ionic-native/http';

@Component({
  selector: 'page-autenticar',
  templateUrl: 'autenticar.html'
})
export class AutenticarPage {

  @ViewChild('username') username;
  @ViewChild('password') password;

  constructor(public navCtrl: NavController, public http: HTTP) {
    console.log(http)
  }

...

在重新加载应用程序后,我得到了这个错误:

运行时错误未捕获(在promise中):错误: StaticInjectorError(AppModule) AutenticarPage -> HTTP: StaticInjectorError(Platform: core)AutenticarPage -> HTTP: NullInjectorError: No provider for HTTP!错误: StaticInjectorError(AppModule)AutenticarPage -> HTTP: StaticInjectorError(Platform: core)AutenticarPage -> HTTP: NullInjectorError: No provider for HTTP!在_NullInjector.get (http://localhost:8100/build/vendor.js:1376:19)在resolveToken (http://localhost:8100/build/vendor.js:1674:24)在tryResolveToken (http://localhost:8100/build/vendor.js:1616:16)在StaticInjector.get (http://localhost:8100/build/vendor.js:1484:20)在resolveToken (http://localhost:8100/build/vendor.js:1674:24)在tryResolveToken (http://localhost:8100/build/vendor.js:1616:16)在StaticInjector.get (http://localhost:8100/build/vendor.js:1484:20)在resolveNgModuleDep (http://localhost:8100/build/vendor.js:11228:25)在NgModuleRef_.get (http://localhost:8100/build/vendor.js:12461:16)在resolveDep (<代码>C16)

我尝试这个,说我必须添加app.module.ts这个import { HttpModule } from '@angular/http';,如下所示:

代码语言:javascript
复制
import { NgModule, ErrorHandler } from '@angular/core';
import { BrowserModule } from '@angular/platform-browser';
import { IonicApp, IonicModule, IonicErrorHandler } from 'ionic-angular';
import { HttpModule } from '@angular/http';
import { MyApp } from './app.component';

....

  imports: [
    BrowserModule,
    HttpModule,
    IonicModule.forRoot(MyApp)
  ],

...

但仍然是同样的错误。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-19 12:30:39

您需要在提供程序中添加HTTP

app.module.ts

代码语言:javascript
复制
...

import { HTTP } from '@ionic-native/http';

...

@NgModule({
  ...

  providers: [
    ...
    HTTP
    ...
  ]
  ...
})
export class AppModule { }
票数 10
EN

Stack Overflow用户

发布于 2018-03-19 10:15:23

您需要在下添加HTTP

代码语言:javascript
复制
providers: [
    HTTP
]
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49354881

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档