【问题标题】:Angular then is not a function那么Angular就不是一个函数
【发布时间】:2018-08-26 10:34:00
【问题描述】:

打字稿代码:

helloworld(){
    this.get_data().then(data => {
      console.log(data);
    });
}

get_data(){
    return this.http.get('assets/data/user.json').map(res => res.json()).subscribe(data => {
        return this.json_data = data;
    });
}

任何人都可以告诉我为什么不工作。我该如何解决这个问题?对不起我的英语不好。

【问题讨论】:

标签: javascript angular ionic-framework ionic2 ionic3


【解决方案1】:

您不能在订阅上执行then。您有一个 observable 来生成数据流,这意味着您实际上无法知道数据流何时结束。

另一方面,thenpromises 一起使用。 promise 只返回 ONE 个数据。一旦数据到达,then 就会激活。

在您的情况下,您需要这样做:

helloworld(){
    this.get_data().subscribe(data => {
        console.log(data);
    })
}

get_data(){
    return this.http.get('assets/data/user.json').map(res => res.json());
}

【讨论】:

    猜你喜欢
    • 2022-08-24
    • 2019-11-13
    • 2021-08-17
    • 2017-01-04
    • 2018-02-21
    • 2016-04-27
    • 1970-01-01
    • 1970-01-01
    • 2013-06-03
    相关资源
    最近更新 更多