我在我的React類中有一個方法,但因爲我想在我的應用程序的幾個類中使用它,所以我將它轉換爲單獨的函數。現在我的問題是,在這個函數中我使用this.setState()
並且想在我的類中使用setState
。如何從函數中調用setState()
?如何通過函數調用setState反應
這是我的函數:
export const syncBasketItemsWithServer = (categoriesData, lBasketItem) => {
if (categoriesData.has_sub_category) {
categoriesData.categories.map((item, index)=> {
syncBasketItemsWithServer(item, lBasketItem);
});
}
if (categoriesData.category_items) {
const exist = _.findWhere(categoriesData.category_items, {uid: lBasketItem.uid});
if (exist) {
lBasketItem.price = exist.price ? exist.price : categoriesData.price;
this.setState({
arr: this.state.arr.concat([lBasketItem])
});
}
}
};
你可以添加您的組件的示例代碼中所使用的功能? –
它就像你的'SomeClass'類的例子! –
將您的功能更改爲僅返回新狀態。在組件(類)中保持對'setState'的調用。 –