Ionic 2-导入/注入Angular 2 HTTP组件
Ionic 2 - Importing/Injecting Angular 2 HTTP Component
我有一个ionic 2应用程序,我一直在使用本地数据进行测试。现在,我正试图向我的api发出一些Ajax请求以获取数据。
在我的app.js
文件中,我定义了我的组件,如下所示:
import {UserProvider} from './providers/user-provider';
...
@App({
templateUrl: 'build/app.html',
providers: [UserProvider]
})
然后,我的user-provider.js
文件定义如下:
import {Injectable} from 'angular2/core';
import {Http, httpInjectables} from 'angular2/http';
@Injectable()
export class UserProvider {
constructor(http: Http) {
http.get('www.someURL.com').toRx().map(res => res.json())
.subscribe(data => console.log(data));
}
}
然后,最后,我用我的signup.js
文件初始化我的"注册"视图:
import {Page, NavController} from 'ionic/ionic';
import {TabsPage} from '../tabs/tabs';
import {UserProvider} from '../../providers/user-provider';
@Page({
templateUrl: 'build/pages/signup/signup.html'
})
export class SignupPage {
constructor(nav: NavController, userProvider: UserProvider) {
this.userProvider = userProvider;
this.nav = nav;
}
}
我的预期结果是,在初始化我的注册视图时,将注入UserProvider
。因此,它的构造函数将运行,这将触发UserProvider
的构造函数中的http.get
函数。然后我应该在浏览器的网络选项卡中看到一个网络调用。
然而,我得到了这个错误:
EXCEPTION: Error during instantiation of UserProvider! (SignupPage -> UserProvider)
app.bundle.js:33693 TypeError: http.get(...).toRx is not a function
at new UserProvider (app.bundle.js:60706)
为什么http.get.toRx()
会导致错误?我最初尝试过这样的承诺:
http.get('www.someURL.com').then(() => {
console.log('test');
});
但这也引发了类似的错误。
在angular2-beta0中,http.get()
已经返回了一个Observable
,您不需要调用它以前的.toRx()
方法,只需直接调用.map()
等即可。
相关文章:
- React重新渲染但未显示正确的组件
- 不能从angular2中的子组件指定父组件中的数组
- 拨打'父亲'函数形式a'儿童'ReactJS中的组件
- React组件等待所需道具进行渲染
- Meteor如何接收HTTP请求
- 如何创建带有插槽的vue js组件预加载程序
- KnockoutJS-组件-多个实例
- 如何更改reactjs中外部/独立组件的状态或属性
- 如何在react js中将值从一个组件发送到另一个组件
- React Native通过Navigator将用户输入数据传递到选项卡栏IOS中的组件
- React组件-设置页面标题
- 我的shareService在angular 2中发送值工作正常,但当我渲染我的另一个组件时,会获得默认值
- 如何在salesforce aura闪电组件中使用jQuery.val()
- Angular2 嵌套组件: 错误: core_2.输入不是函数 加载 http://localhost:9080/ap
- Ionic 2-导入/注入Angular 2 HTTP组件
- 如何在angular 2测试版的服务中高效地使用Http组件
- AngularJS 1.5:组件获胜't加载http数据
- Angular2/TypeScript&HTTP:如何将对象附加到组件
- 在对另一个组件执行http请求时保持响应性
- 在2.0RC中不能从组件中访问value -resource's $http方法