首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >角2 ES6注入Http

角2 ES6注入Http
EN

Stack Overflow用户
提问于 2016-01-14 21:32:41
回答 1查看 795关注 0票数 1

我正在努力弄清楚如何使用es6正确地将http注入我的类。当我使用@inject时,我会看到一个错误:inject is not defined。我是不是漏掉了其他我必须导入的注射品才能在这里工作?

代码语言:javascript
复制
import 'zone.js/lib/browser/zone-microtask';
import 'reflect-metadata';
import 'babel-polyfill';

import {provide} from 'angular2/core';
import {bootstrap} from 'angular2/platform/browser';
import {ROUTER_PROVIDERS, LocationStrategy, HashLocationStrategy} from 'angular2/router';
import {Http, Headers} from 'angular2/http';

import {Component, View, Input} from 'angular2/core';
import {RouteConfig, RouteParams, ROUTER_DIRECTIVES} from 'angular2/router';


@Component({
    selector: 'test-app',
    template: '<div>Hello my name is {{name}}. <button (click)="sayMyName()">Say my name</button></div>'
})
@inject('Http')
export class TestApp
{
    constructor(http)
    {
        this.name = 'Allencoded';
        this.http = http;
    }

    sayMyName()
    {
        console.log('My Name is ', this.name);
        console.log(this.http);
    }
}
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-01-14 22:13:08

这就是我让它最终发挥作用的原因:

代码语言:javascript
复制
import { Http, HTTP_PROVIDERS } from 'angular2/http';

export class TestApp
{
    static get parameters() {
        return [[Http]];
    }

    constructor(http)
    {
        this.name = 'Allen';
        this.http = http;
    }
}

bootstrap(TestApp, [
  HTTP_PROVIDERS,
  provide(LocationStrategy, { useClass: HashLocationStrategy })
]);

摘自:How to Inject Angular2 Http service into es6/7 Class?

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34800150

复制
相关文章

相似问题

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