firebase中的var

时间:2017-03-25 15:14:28

标签: variables firebase dynamic firebase-realtime-database

我正在尝试根据名称的值创建一些动态JSON,如下面的

this.merchantFirebase.child(firebase.auth().currentUser.uid).update({
      this.props.data.name: {
        status: this.state.productSwitch
      }
    });

我在想这会产生类似

的东西
this.merchantFirebase.child(firebase.auth().currentUser.uid).update({
      latte: {
        status: this.state.productSwitch
      }
    });

但它只是给了我一个意外的令牌错误

1 个答案:

答案 0 :(得分:3)

您需要为此使用不同的表示法:

var updates = {};
updates[this.props.data.name] = { status: this.state.productSwitch };

this.merchantFirebase.child(firebase.auth().currentUser.uid).update(updates);

通过使用方括号表示法,JavaScript“知道”它需要将this.props.data.name作为表达式进行求值,而不是将其用作属性的文字名称(因为它试图在您的代码中执行)。