我有对象的这一部分:
js: {
cwd: 'src/js',
src: [ "src/js/*.js", "src/js/*.min.js" ],
dest: 'dist/js'
}
如何将cwd
属性插入到src
属性中,使其看起来如下所示?
src: [ `${cwd (or js.cwd)}/*.JS .. etc ]
答案 0 :(得分:0)
您可以使用 Array#shift()
, Array#map()
和 Array#push()
方法来做到这一点 :
js = [js].map(a => {
a.src.push(a.cwd);
delete a.cwd;
return a;
}).shift();
演示:
var js = {
cwd: 'src/js',
src: ["src/js/*.js", "src/js/*.min.js"],
dest: 'dist/js'
};
js = [js].map(a => {
a.src.push(a.cwd);
delete a.cwd;
return a;
}).shift();
console.log(js);
答案 1 :(得分:0)
使用ES2018'spread operator:
const foo = {
...js,
src: [...js.src, js.cwd]
}
答案 2 :(得分:0)
您想要的是计算属性,因此请使用吸气剂。
const js = {
cwd: 'src/js',
get src() {
return [ "/*.js", "/*.min.js" ]
.map(ending => this.cwd + ending)
},
dest: 'dist/js'
}
console.log(js)