【发布时间】:2023-03-23 23:39:01
【问题描述】:
我正在从我的数据库中获取一个对象: 示例:
{availability: null
bio: null
category: ""
createdAt: "2020-10-13T13:47:29.495Z"
email: "oznerol@prova.com"
firstName: "Lorenzo"
id: 37
image: null
job: null
lastName: "Del Rosario"
location: ""
password: "$2b$10$J6m71nc8gBXTvEENMwBjt.azNitCsna3LsxaDIUg.B0ztiTm5xFea"
phone: ""
skills: null
updatedAt: "2020-10-13T13:47:29.495Z"
website: ""}
我正在尝试映射此对象以将所有 null 值更改为 ''。
这是我的代码:
const [userData, setUserData] = useState()
useEffect( ()=>{
const fetchData = async () => {
const a = await getUserData(userId);//this retuns the object
const cleanUserData = Object.entries(a).map(([key, value]) =>
value === null || undefined ? value = '' : value
)
setUserData(cleanUserData);
};
fetchData();
},[])
但是通过这种方式我改变了我的值,但我失去了我的钥匙,结果是一个像这样的对象:
{0:37
1:"oznerol@prova.com"
2:"$2b$10$J6m71nc8gBXTvEENMwBjt.azNitCsna3LsxaDIUg.B0ztiTm5xFea"
3:"Lorenzo"
4:"Del Rosario"
5:""
6:""
7:""
8:""
9:""
10:""
11:""
12
...}
【问题讨论】:
-
顺便说一句,您的 api 存在重大安全漏洞:响应不应包含密码。
-
是的,这将是我的下一步,谢谢!
标签: javascript arrays reactjs object