[英]Is it possible to use objects declared in useeffect hook?
我想使用在useEffect
鈎子中聲明的 object,比如
function App(){
useEffect(() => {
let myObject = .....
}
myObject.myFunction()
}
但是 IDE 給我一個錯誤,說myObject
沒有定義......
我假設這不是一個很好的方法來引導重新渲染在 useEffect 鈎子中聲明的對象,但是無論如何,有沒有辦法使用在 useEffect 鈎子中聲明的對象?
我不這么認為,因為它在不同的 scope 中。
可以改用 state,因為當 useEffect 調用和 object 更改時,您不會在 object 中獲得新值
像這樣:
function App(){
const [myObject,setMyObject] = useState()
useEffect(() => {
setMyObject(...)
},[])
myObject?.myFunction()
}
首先你的代碼是錯誤的。 它不是useeffect
它是useEffect
,所以:
useeffect(() => {
let myObject = .....
}
應該:
useEffect(() => {
let myObject = .....
}
其次,您將在這種情況下使用useState
:
const [ myObject, setMyObject ] = useState()
useEffect(() => {
setMyObject(...)
}, [])
myObject?.myFunction()
第三,確保您使用以下內容正確導入它們:
import React, { useState, useEffect } from 'react'
function So75221887() {
const [ myObject, setMyObject ] = useState()
useEffect(() => {
setMyObject(...)
}, [])
myObject?.myFunction()
}
export default So75221887
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.