簡體   English   中英

有沒有辦法將 state 信息從反應掛鈎傳遞到反應中的嵌套函數?

[英]Is there a way of passing state information from react hooks into nested functions in react?

這是我的第一個獨立反應項目,如果我錯過了任何明顯的東西,請道歉。 我正在嘗試找到一種將 {account} 和 {value} 放入 handlePledge 的方法。 顯然你不能直接在嵌套函數中使用它們。 我嘗試了不同的方法,例如將 {account} 和 {value} 傳遞為 arguments (即 handlePledge({account}, {value})),但沒有運氣。

function App() {
  const [account, setAccount] = useState();
  const [button, setButton] = useState('Enable Ethereum');
  const [value, setValue] = useState(1);


  const handlePledge = async (e) => {
    e.preventDefault();
    const gas = await SixtySixDays.methods.createNewPledge().estimateGas();
    const result = await SixtySixDays.methods.createNewPledge().send({
      from: #account-goes-here,
      gas,
      value: #value-goes-here
    })
    console.log(result);
  }

謝謝,非常感謝您的幫助。

您可以像這樣直接傳遞值:

 const result = await SixtySixDays.methods.createNewPledge().send({
   from: account,
   gas,
   value: value
}

“顯然你不能直接在嵌套函數中使用它們。” - 你可以而且你應該

您可以並且應該直接使用任何 state 變量。

    const result = await SixtySixDays.methods.createNewPledge().send({
      from: account,
      gas,
      value: value
    })

以上應該工作。

正如@Nick 暗示的那樣,您實際上可以在封閉的 scope 中使用這些變量。 它們可以從您在共享 scope 中聲明的函數中完全訪問。

也許您的問題是如何更新渲染? 如果我沒有回答您的問題,請說明您遇到的確切錯誤。

暫無
暫無

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

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