es6变量为字符串

时间:2017-03-01 14:44:54

标签: javascript reactjs ecmascript-6

我正在研究React ES6应用程序。

是否可以声明一个将被视为变量名的变量,如下面的refInput?

renderInput(inputName) {
    const refInput = `${inputName}Input`;

    return (
        <Input
            ref={(node) => {
                this.refInput = node;
            }}
        />
    );
}

感谢任何帮助,我真的很挣扎

1 个答案:

答案 0 :(得分:0)

动态地向对象添加属性,您可以在对象上使用属性括号访问符号[string_name]。您可以ref element by attribute with string name

renderInput(inputName) {
  const refInput = `${inputName}Input`;

  return (
    <Input
        ref={(node) => {
            this[refInput] = node;
        }}
    />
  );
}