如何使用javascript将firestore文档字段设置为非空值

如何使用javascript将firestore文档字段设置为非空值,javascript,node.js,google-cloud-firestore,Javascript,Node.js,Google Cloud Firestore,我正在尝试为Firestore中的文档设置非空值。有一种方法可以使用JavaMap对象来实现这一点。使用NodeJS的相同方法似乎不起作用 以下是我的代码片段: var map = new Map(); map.set('userName', 'hellokitty'); return db.collection('users').doc(uid) .set(map) .catch(error => { throw new functions.https.HttpsError

我正在尝试为Firestore中的文档设置非空值。有一种方法可以使用JavaMap对象来实现这一点。使用NodeJS的相同方法似乎不起作用

以下是我的代码片段:

var map = new Map();
map.set('userName', 'hellokitty');

return db.collection('users').doc(uid)
  .set(map)
  .catch(error => {
  throw new functions.https.HttpsError('unknown', error.message, error);
})
此代码返回以下错误消息:

错误:参数“data”不是有效的文档。输入不是普通的JavaScript对象


firestore是否支持使用javascript映射对象?这里有什么我遗漏的吗?

只需使用一个常规JavaScript对象和描述文档的属性即可

const data = {};
data.userName = 'hellokitty';
db.collection('users').doc(uid).set(data);

请参阅。

是否确实需要自定义对象?这将使查询变得复杂,不是吗?其思想是只需轻松地构建一个具有非空值的对象,而不必手动构建json。一种用于异步浏览器-服务器通信的
通用数据格式,即或多或少是一种文件类型。非常有效。我的错。我想我也必须在js中使用map。