exports.getAllBuilds = () => Object.keys(builds).map(genConfig)
- 函數Object.keys
會返回一個對象中所有可枚舉的key,如果是數組,將會返回下標。
例如:
1.const configs = {
umdDev: {
format: 'umd',
env: 'development'
},
umdProd: {
format: 'umd',
env: 'production'
}
}
console.log(Object.keys(configs));//["umdDev","umdProd"]
2.const test=["11","22","33"]
console.log(Object.keys(test));//["0","1","2"]
-
map函數
方法會返回一個數組,該方法的參數爲currentValue, index,arr,.
currentValue 必須。當前元素的值
index 可選。當前元素的索引值
arr 可選。當前元素屬於的數組對象 -
process.env.TARGET
process對象- node.js中進程相關的對象
- 是全局對象,因此你可以在code中的任何一個地方訪問其對象 中的屬性,值都是一致的
- 其中包含一些和進程以及nodejs運行環境相關的一些屬性
在webpack中可以採用如下方式設置env對象。
windows:
"serve": "set TARGET=這就是測試 && vue-cli-service serve ",
mac:
"serve": "export TARGET=測試 && vue-cli-service serve ",
因爲爲平臺不一樣所以增加開發困難所以可以引用cross-env(跨平臺設置第三方變量包)
"serve": "cross-env TARGET=測試 vue-cli-service serve",
- process.argv[2]
process.argv[0]——返回啓動Node.js進程的可執行文件所在的絕對路徑 process.argv[1]——爲當前執行的JavaScript文件路徑
process.argv[2]——其他命令行參數
例如:
輸入命令:node scripts/build.js "web-runtime-cjs,web-server-renderer"
結果:
console.log(process.argv[0]) // 打印 D:\nodeJs\node.exe
console.log(process.argv[1]) // 打印 E:\Study_document\vue-resource\vue-dev\scripts\build.js
console.log(process.argv[2]) // 打印 web-runtime-cjs,web-server-renderer
參考網址:https://blog.csdn.net/zxj0904010228/article/details/83443585