mac环境下process.env.NODE_ENV is undefined,webpack package.json cross-env

本文探讨了在不同操作系统(如Windows与Mac)中设置环境变量和执行任务链的方法,重点介绍了如何使用cross-env替代set命令,并将逻辑运算符&&替换为空格,以实现更广泛的兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

"scripts": {
    "dev": "node build/dev-server.js",
    "unit": "cross-env karma start test/unit/karma.conf.js --single-run",
    "e2e": "node test/e2e/runner.js",
    "test": "npm run unit && npm run e2e",
    "unit-debug": "karma start test/unit/karma.conf.js --browsers=Chrome --auto-watch --no-colors",
    "lint": "tslint src/**/*.ts",
    "watch": "cross-env NODE_ENV=dev webpack --watch  --color --config build/webpack.prod.conf.js",
    "build": "npm run build:dev",
    "product": "npm run build:prod",
    // "build:dev": "set NODE_ENV=dev&&node build/build.js",
    "build:dev": "cross-env NODE_ENV=dev node build/build.js",
    "build:prod": "cross-env NODE_ENV=production node build/build.js",
    "dll": "rm -rf ./dll webpack --config build/webpack.dll.conf.js --progress ",
    "log": "cross-env NODE_ENV=production webpack --config ./build/webpack.prod.conf.js --colors --profile --progress"
  },

之前写法是set NODE_ENV 并且使用了&& 运算符;

在windows下没有错,但是mac下就是undefined

原因2个

1.mac下不支持set NODE_ENV,

2.mac 下&&不能用

所以使用通用的cross-env 并且把&&变成空格

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值