我正在尝试使用aurelia从某些json数据生成一组唯一的组名列表。该代码在Chrome中使用普通的javascript可以工作,但是在Aurelia中运行时会引发错误。参见小提琴。
我遇到的错误是“ concat不是函数”。 babel或webpack似乎有问题。下面的代码是我在浏览器中看到的转译版本。
var groupList = new Set(jsonData.map(function (x) {
return x.group.name;
})).concat(); //concat is not a function
这是我的代码:
let jsonData = [
{ index: '0', name: 'INCH', factor: '12', desc: '', magnitude: '1', group: {name: 'length'} },
{ index: '1', name: 'FOOT', factor: '3', desc: '', magnitude: '2', group: {name: 'length'} },
{ index: '2', name: 'YARD', factor: '3', desc: '', magnitude: '3', group: {name: 'length'} },
{ index: '6', name: 'SQ FOOT', factor: '3', desc: '', magnitude: '2', group: {name: 'area'} },
{ index: '7', name: 'SQ YARD', factor: '3', desc: '', magnitude: '3', group: {name: 'area'} }
];
createGroups();
function createGroups() {
const groupList = [...new Set(jsonData.map(x => x.group.name))];
debugger;
}
如果我在Babel网站上插入下面的代码,它将生成与我从Aurelia获得的代码完全不同的代码。以为我可能有一个旧版本的Babel,所以我更新到了最新版本,但仍然遇到相同的错误。有什么解决方法或解决方案吗?
const groupList = [...new Set(jsonData.map(x => x.group.name))];
答案 0 :(得分:1)
在'loose': false
中设置babelrc.js
可以解决此问题。