3 回答
TA贡献1864条经验 获得超6个赞
您可以使用.reducewithObject.entries来实现这一点。首先,Object.entries将在您的entries对象中为您提供一组键值对:
[["app", "/main/application/src/app/src/pages/app/src/index.js"], ...]
然后,您可以使用.reduce来构建一个新对象,该对象获取上述数组的每个内部数组(即:获取每个键值)并将其添加到新对象中。但是,新对象的值是一个包含当前值和字符串的数组"@babel/polyfill"。
见下面的实现:
let entries = {
"app": "/main/application/src/app/src/pages/app/src/index.js",
"app1": "/main/application/src/app/src/pages/app/src/app1.js",
"app2": "/main/application/src/app/src/pages/app/src/app2.js"
}
const arr_res = Object.entries(entries).reduce(
(acc, [k, v]) => ({...acc, [k]: ["@babel/polyfill", v]}),
{});
console.log(arr_res);
TA贡献1772条经验 获得超8个赞
以下是假设"@babel/polyfill"不变但很容易更改的快捷方式。
let entries = {
"app": "/main/application/src/app/src/pages/app/src/index.js",
"app1": "/main/application/src/app/src/pages/app/src/app1.js",
"app2": "/main/application/src/app/src/pages/app/src/app2.js"
};
let newEntries = Object.keys(entries).map(key => [key,["@babel/polyfill", entries[key]]])
.reduce((a,c) => {a[c[0]] = c[1]; return a},{});
console.log(newEntries);
如果我没记错的话,Object.entries()它比Object.keys()以前更近,我会把它留在这里以防浏览器支持很重要。
添加回答
举报