gpt4 book ai didi

Angular2 无法在 promise 中访问 'this'

转载 作者:太空狗 更新时间:2023-10-29 17:41:18 25 4
gpt4 key购买 nike

我无法在 ng2-sweetalert2 插件的 promise 中调用函数

swal({
title: 'Are you sure?',
text: "You won't be able to revert this!",
type: 'warning',
showCancelButton: true,
confirmButtonText: 'Yes, delete it!'
}).then(function(x) {
this.removeNote(key);
swal(
'Deleted!',
'Your file has been deleted.',
'success'
);
}, function(e){
console.log('Cancelled');
});

removeNote(key){
this.todo.remove(key);
this.afService.closeNote(key);
}

this.removeNote() 导致错误。

EXCEPTION: Uncaught (in promise): TypeError: Cannot read property 'removeNote' of undefined

我该如何克服这个问题?我使用了 NgZone 但我得到了同样的错误

最佳答案

假设您使用的是 TypeScript,您可以使用 arrow function expression ,它保留了 this 的值。

swal({...}).then((x) => console.log(this)); // now 'this' is your component

关于Angular2 无法在 promise 中访问 'this',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42606632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com