在項目中使用到了antd的Modal.confirm方法,發現獲取不到this
項目中需求是這樣的:點擊刪除的時候,彈出confirm框,點擊OK的時候請求刪除接口
D500192C-1CD4-416B-9BD2-A37945D41E42.png
項目中的代碼如下:
const confirm = Modal.confirm;
confirm({
title: '確定要刪除嗎?',
onOk(){
this.requestDelete()
})
},
onCancel() {
console.log('Cancel');
},
});
但是,這樣的話會報錯:打印出來的this是undefined,后來查了一下需要對方法做一下修改才能獲取到this。修改如下:將onOk()改為箭頭函數形式:onOk: ()=>{}
const confirm = Modal.confirm;
confirm({
title: '確定要刪除嗎?',
onOk :()=>{
this.requestDelete()
})
},
onCancel() {
console.log('Cancel');
},
});