【发布时间】:2020-07-03 10:18:50
【问题描述】:
每当邀请 [1] [1] 中的值发生更改时,我想重新运行以下代码以重新加载页面,我在另一个页面中使用 AsyncStorage 更新这些数组值,当我尝试以下操作时,我得到了下面的错误。 还有其他方法吗?
const [invitation, setInvitation] = React.useState(Array.from({length: 2},()=> Array.from({length: 2})));
React.useEffect(()=>
{
getUserId();
},invitation[1][1]);
async function getUserId() {
var keys = ["invitationFromURL","Alert"]
try {
await AsyncStorage.multiGet(keys , (err, item) =>
{
setInvitation(item);
});
} catch (error) {
// Error retrieving data
console.log(error.message);
}
}
console.log(invitation);
console.log(invitation[1][1]);
我得到的错误 警告:%s 在此渲染期间收到了最后一个参数,但在上一次渲染期间未收到。即使最后一个参数是可选的,它的类型也不能在渲染之间改变。%s,useEffect
【问题讨论】:
-
如果有人遇到我遇到的问题。我忘了把被监视的对象放在一个数组中,把它放在一个数组中消除了错误。
标签: javascript react-native expo use-effect use-state