javascript - 从变量(从导入的 JS)中获取字符串作为对象中的键
问题描述
如何使变量成为对象的关键?
我正在从 definitions.js 导入常量,这些常量需要用作键:
import * as cons from '../scripts/definitions.js'
export default {
data () {
return {
cons: cons,
obj: {
cons.FILENAMEA: {},
cons.FILENAMEB: {
children: [
cons.CHILDFILENAME1,
cons.CHILDFILENAME2,
cons.CHILDFILENAME3
]
}
}
}
},
使用上面的代码,我收到错误:
Parsing error: Unexpected token, expected ","
因为 . 中的点 (. cons.FILENAMEA
) 这该怎么做??请注意,我需要从外部文件中获取这些变量/常量。不可能只在同一个文件上声明它。
谢谢!
解决方案
您可以使用 es6计算属性:
obj: {
[cons.FILENAMEA]: {},
[cons.FILENAMEB]: {
children: [
cons.CHILDFILENAME1,
cons.CHILDFILENAME2,
cons.CHILDFILENAME3
]
}
}
括号内的表达式将被评估并用作属性名称
推荐阅读
- linux - 如何在 cygwin 中编写 shell 脚本?(尤其是案例语句/循环)
- python - 在 Python 中使用 object 作为类型有什么问题?
- deep-learning - Alpha 零输出神经元配置
- sum - 多个动态列的总和
- excel - 查找行范围是否有连续月份的解决方案 - 添加缺少月份的行
- java - 将两个 List 元素与 Java 中的流进行比较并返回
- javascript - 在没有数据库的PHP中创建多个密码
- pandas - 如何从 DataFrame 中过滤数据,以便那些小于阈值的值在 Python 中为 0,其余为 1?
- android - 为什么 TYPE_TEXT_FLAG_NO_SUGGESTIONS 不能禁用自动更正?
- node.js - 使用 findOne 进行获取的 Mongoose 错误处理