簡體   English   中英

變量值未在函數中更新

[英]Variable value doesn't update in function

我在無狀態React組件中使用onClick處理程序。
在div上觸發click事件時,它會觸發loadMore操作,該操作使用redux操作從REST API中獲取更多數據。

count = 6;

var loadMore = e => {
 getArticlesComments(article.slug, count, count + 2);
 count = count + 6;
};

我的問題是由於redux動作, count沒有更新。 如果我刪除它, count正在正確更新。

為什么redux動作(正常運行)會停止更新count

謝謝

您需要先將計數放入狀態,然后再更新狀態

React只對您的狀態或道具的更新做出反應。 從您共享的代碼來看, count似乎不是任何狀態的一部分。 如果要在計數更改時更新視圖,則計數需要處於一個狀態內。 您提到您的組件是無狀態的,因此您需要:

  1. 將您的組件轉換為常規組件,並定義state = { count: 0}並在“ loadMore”事件中使用setState對其進行更新。 看例子
  2. 將count移至redux狀態,並使用mapStateToProps將其映射到屬性,最后,通過redux reducer而不是在'loadMore'事件中更新count。 查看redux中的更新狀態

編輯:#2 更改狀態onClick React + Redux的更好示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM