Javascript 设置状态以更新接口阵列
我需要更新用户界面中的地址数组。我正在尝试使用setState从UI表单更新地址。我尝试了以下方法:Javascript 设置状态以更新接口阵列,javascript,reactjs,typescript,Javascript,Reactjs,Typescript,我需要更新用户界面中的地址数组。我正在尝试使用setState从UI表单更新地址。我尝试了以下方法: setUser({...user, address: [...(user?.address|| []), addressObject]}); 但是,我得到了以下错误:类型“Address | undefined”不可分配给类型“Address”。类型“未定义”不可分配给类型“地址” export default interface User{ firstName: string,
setUser({...user, address: [...(user?.address|| []), addressObject]});
但是,我得到了以下错误:类型“Address | undefined”不可分配给类型“Address”。类型“未定义”不可分配给类型“地址”
export default interface User{
firstName: string,
surName: string,
email: string,
phone: string
Address: Address[]
}
任何帮助都将不胜感激请确保您的
地址
道具已定义,然后再将其设置为状态。您可以按以下方式执行此操作:
if(用户地址){
setUser({…用户,地址:[…(user.address | |[]),addressObject]});
}
ts将拾取该用户。地址将在调用setState
时定义
或者,如果要允许未定义地址
,则可以将接口定义更改为:
导出默认用户界面{
...
地址:地址[]|未定义
}
什么是addressObject
?不相关,但Address
并不是地址集合的好名称,setUser
调用使用了Address
属性,而接口拼写为Address
。