我需要动态分配 JSON 属性名称,所以我尝试使用 computed property names :
var dynamicNameProperty = (!irrelevantCondition) ? "name1" : "name2";
var element = {
"oneStaticNameProp":"Hi!",
[dynamicProperty] : "Oh oh... This produces an error."
};
...但是,当我运行 gulp serve
时,我得到了下一个错误:
Error in parsing: "main\templates\dashboard\dashboard.controller.js", Line 160: Unexpected token [
我也尝试过 bracket notation :
var dynamicNameProperty["name"] = (!irrelevantCondition) ? "name1" : "name2";
var element = {
"oneStaticNameProp":"Hi!",
dynamicNameProperty["name"] : "Oh oh... This produces an error too."
};
但我遇到了同样的错误...所以我尝试用 dot dotation 试试运气:
var myObject = {
dynamicNameProperty: (!irrelevantCondition) ? "name1" : "name2"
};
var element = {
"oneStaticNameProp":"Hi!",
myObject.dynamicNameProperty : "Oh oh... This produces an error too."
};
我得到一个类似的错误:
Error in parsing: "main\templates\dashboard\dashboard.controller.js", Line 160: Unexpected token .
显然……有什么东西在逃避我。您知道任何替代方案或解决方案吗?
WARNING: This is only an example of my problem: I can not
and I do not wantjust use an if statement for the two states ofdynamicNameProperty
最佳答案
您可以在创建“元素”对象之后添加 dynamicNameProperty:
var dynamicNameProperty = (!irrelevantCondition) ? "name1" : "name2";
var element = {
"oneStaticNameProp":"Hi!"
};
element[dynamicNameProperty] = "Yay....no error here!";
关于javascript - 计算的属性名称。 "gulp-angular-filesort : unexpected token [",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37352924/