【发布时间】:2019-11-19 00:21:32
【问题描述】:
我试图从这个 http.get 获得响应
getChatId(emailTo): any {
var email = emailTo
const httpOptions = {
headers: new HttpHeaders({
'Accept': 'application/json',
'Content-Type': 'application/json',
'Token': this.token_value
})
};
this.httpClient.get("https://xxxx=" + email, httpOptions)
.subscribe(data => {
console.log(data['_body']);
return data
}, error => {
console.log(error);
return error
});
}
这个在我的构造函数中
this.getChatId(this.emailTo).then((date) => {
var docRef = firebase.firestore().collection("xxx").doc(date.response);
docRef.onSnapshot((doc) => {
this.document = doc.data()
let chats_message = [];
for (let k in this.document.messages) {
chats_message.push(this.document.messages[k]);
}
chats_message.sort(function (a, b) { return a.id - b.id; })
this.messages_chat = chats_message;
this.content.scrollToBottom(300);//300ms animation speed
console.log("Array", this.messages_chat);
})
});
但它给了我这个错误:
vendor.js:1823 ERROR 错误:未捕获(承诺中):TypeError:不能 读取未定义类型错误的属性“订阅”:无法读取属性 未定义的“订阅”
【问题讨论】:
-
你在一个不是承诺的函数上使用了 .then。
标签: ionic-framework ionic2 ionic3 ionic4 ionic-native