Com*_*lim 13 cross-platform npm
我正在构建一个package.json并使用"npm run"运行一些脚本,确切地说,https://docs.npmjs.com/misc/scripts.
我的脚本需要扩展一些环境变量,我想让它跨平台兼容.例如,我的脚本会说
"scripts": {
"build": "md %npm_package_version%\helloworld"
}
但它目前正在Windows上运行,因为环境变量的扩展.Linux会用md $npm_package_version\helloworld.
是否npm提供了一种转换环境变量扩展的机制,以便它可以跨平台工作?
Mar*_*oon 11
要使其跨平台,请使用cross-var:
"scripts": {
"build": "cross-var md %npm_package_version%\helloworld"
}
Run Code Online (Sandbox Code Playgroud)
npm似乎没有跨平台的方式来扩展环境变量,但你确实有自己的节点,所以我建议你将所有的脚本都作为节点脚本实现,然后你可以访问process.env和跨平台文件系统功能,比如mkdirSync.
的package.json
"scripts": {
"build": "node utils/mdkir.js"
}
Run Code Online (Sandbox Code Playgroud)
utils的/ mkdir.js
'use strict';
var fs = require('fs');
fs.mkdirSync(process.env.npm_package_version + '/helloworld');
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4988 次 |
| 最近记录: |