为了账号安全,请及时绑定邮箱和手机立即绑定

使用变量存储“change.doc”路径

使用变量存储“change.doc”路径

交互式爱情 2021-12-02 16:07:03
我正在尝试使用变量作为 firestore 文档路径:        console.log(change.doc.data().m_1.name);   <----- This work well !        a = 1;        let me = change.doc.data().m_+a;    <----- But not that....        console.log(me.name);我怎样才能做到这一点 ?先感谢您 !:)
查看完整描述

3 回答

?
海绵宝宝撒

TA贡献1809条经验 获得超8个赞

使用动态属性时应该使用括号。

let me = change.doc.data()['m_' + a];


查看完整回答
反对 回复 2021-12-02
?
蓝山帝景

TA贡献1843条经验 获得超7个赞

我认为您想将键的名称构建为它自己的变量并使用它来索引对象。


const a = 1;

const key = "m_" + a;

const me = change.doc.data()[key];


查看完整回答
反对 回复 2021-12-02
?
MMMHUHU

TA贡献1834条经验 获得超8个赞

当您a在示例中使用变量时,您是在要求 JS 将数字 1 添加到您的函数输出中。这不是正确的方法。您想使用一个键来访问data()函数返回输出中的数据,如下所示。


change = {

doc: {

    data: function() {

      return {

        m_1: {

          name: "Mario",

          occupation: "plumber",

          siblings: 1,

          age: 24

        },

        m_2: {

          name: "Mike",

          occupation: "developer",

          siblings: 3,

          age: "28"

        }

      }

    }

  }

}


console.log("Old way:" + change.doc.data().m_1.name);


const a = 1;

let me = change.doc.data()['m_' + a];

console.log("Desired way: " + me.name)

我假设了一个从您的问题派生的简单数据结构,但我不确定它是否是您所得到的。但它可能看起来有点像。


编辑awww....页面没有刷新,我没有看到两个第一个答案:(好吧...至少我们同意


查看完整回答
反对 回复 2021-12-02
  • 3 回答
  • 0 关注
  • 143 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信