You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

React Native中Firestore数组值无法添加问题咨询

解决Firestore批量写入时数组字段未正常添加的问题

嘿,我一眼就揪出问题啦!你代码里犯了个超容易忽略的拼写错误——在batch.set的字段里,你写成了facilitiess(多了一个s),但你要存储的数组是submission.facilities,这就导致Firestore创建了一个完全不存在的新字段,而你真正期望的facilities字段根本没被写入进去。

你打印submission.facilities能看到正确的数组,说明数据本身没问题,就是字段名拼写失误拖了后腿。Firestore对字段名是严格匹配的,多一个字母都会生成新字段,自然就看不到你想要的数组数据了。

给你修正后的代码:

const parent = db.collection('submissions').doc();
console.log(submission.facilities); // output: ["CHANGING_FACILITIES"] // it's an array
// 把字段名从facilitiess改为facilities,和原数据字段保持一致
batch.set(parent, { ...submission, facilities: submission.facilities });
batch.commit();

另外补充个小优化:如果submission对象里已经包含了facilities字段,那其实你根本不需要单独再写一遍赋值,直接传入整个submission就行,既简洁又能避免拼写错误:

const parent = db.collection('submissions').doc();
console.log(submission.facilities); // output: ["CHANGING_FACILITIES"] // it's an array
batch.set(parent, submission);
batch.commit();

内容的提问来源于stack exchange,提问作者user5470921

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.26 09:41:42