Dalam angular1.5.8, apabila saya memanggil antara muka untuk mengembalikan data, jika parameter permintaan kosong atau tidak ditentukan, maka kembalikan, tetapi nilai yang dikembalikan oleh pulangan ini kosong dan tidak mempunyai .then, dan ralat dilaporkan
Kod kes:
onGoodsNameAutoComplate = (value: string) => {
if (!this.clientId || !this.$scope.goodsTypeId) {
return;//这边返回就是空的,没有.then,则会报错
};
return this.goodsService.getList(this.clientId, value, this.$scope.goodsTypeId, 0, 5).then(res => {
return res.data.list;
})
}
Kod ralat:
TypeError: Cannot read property 'then' of undefined
at T (angucomplete-alt.min.js:2)
at $ (angucomplete-alt.min.js:2)
at m.b.onFocusHandler (angucomplete-alt.min.js:2)
at fn (eval at compile (angular.js:14817), <anonymous>:4:233)
at b (angular.js:15906)
at e (angular.js:25885)
at m.$eval (angular.js:17682)
at m.$apply (angular.js:17782)
at HTMLInputElement.<anonymous> (angular.js:25890)
at HTMLInputElement.dispatch (jquery.min.js:3)
Saya mahu berada di sini:
if (!this.clientId || !this.$scope.goodsTypeId) {
return;//这边模拟返回一个空的promise对象,就不会报错了。。。
};
Bagaimana untuk mensimulasikan objek janji kosong? Cari penyelesaiannya! Terima kasih!
Pertama sekali, saya menggunakan ng1+ts di sini Saya perlu memberi perhatian untuk menyuntik $q dahulu
Saya jumpa cara yang lebih baik