![](/img/trans.png)
[英]`this` being undefined on object method when called as a react component prop
[英]Undefined 'this' when handing class method to React component
我的 React 應用程序在 API class 中有 API 個方法:
class API {
constructor() {
//setup axios
}
async deleteEquipment(item) {
return this.axios.delete(...paths and stuff..)
}
}
export default API(config)
這對我的大部分代碼都適用,除非我需要通過 props 將它交給組件,如下所示:
import API from '../path/to/api.js'
.. code
<PageTable
deleteItem={API.deleteEquipment}
...more props
/>
this
不起作用,因為它似乎在 class 中用於引用 axios 現在未定義。
this.axios
導致Cannot read properties of undefined (reading 'axios')
我嘗試過后期綁定,將方法綁定到 class,如下所示:
<PageTable
...more props
deleteItem={API.deleteEquipment.bind(API)}
/>
但似乎並沒有太大的作用。 任何想法如何在 PageTable 調用該方法時保持對PageTable
this
引用?
提前致謝!
嘗試在構造函數中綁定 deleteEquipment
this.deleteEquipment = this.deleteEquipment(this);
還可以將 await 與異步函數一起使用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.