搜索
javascript - es6 参数注入问题
为情所困
为情所困 2017-05-19 10:26:27
[JavaScript讨论组]
class loginCtrl {
    constructor(http) {
        [this.http, this.name] = [http, 'login'];
    }

    login() {
        console.log(this.http);
        console.log(this.name);
    }
}
loginCtrl.$inject = ['http'];

let a = new loginCtrl();
a.login();


这样调用之后http是undefined,但是通过点击事件,即可以打印出来。


这是怎么回事,注入http那里用的是angular的。
http代码如下:

class http {
    constructor($http) {
        this.$http = $http;
        this.options = {
            headers: {
                'Content-type': 'application/json;charset=utf-8',
                'accessToken': 2332
            }
        }
    }
    get(data, url, cb) {
        let gets = {method: 'GET', params: data, url: url}
        Object.assign(gets, this.options)
        this.$http(gets).then(function (data) {
            console.log('success');
            cb(data);
        })
    }
}

http.$inject = ['$http'];

export default angular.module('http', [])
    .service('http', http)
    .name;
为情所困
为情所困

全部回复(2)
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板