NPM Run Build 始终构建生产而不是开发

Ωme*_*Man 11 node.js npm package.json npm-scripts

在我拥有的继承项目中,我试图获取构建命令来构建Production.

我试图更改script部分中的别名package.json以传递额外的变量,例如--dev--configuration=dev无济于事。


该项目有这些json数据文件:

 env.dev
 env.development
 env.production
Run Code Online (Sandbox Code Playgroud)

有我运行的package.json这个构建别名:build:devnpm run build:dev

"scripts": {
    "start": "NODE_ENV=dev && react-scripts start",
    …
    "build:dev": "npm run build --dev --configuration=dev && react-scripts build"
}
Run Code Online (Sandbox Code Playgroud)

这有效并构建,但仅适用于我在查看结果文件时验证的生产。


如果我env.production从目录中删除文件并运行构建命令,它会失败:

Creating an optimized production build...
Failed to compile.

Module not found: Error: Can't resolve 'polyfills' in 'C:\Work\MyProj\WebSiteName\src'
Run Code Online (Sandbox Code Playgroud)

这只是告诉我它可以polyfillsenv.production文件中找到该位置的别名NODE_PATH=src/

想法?

Mic*_*ael 5

你需要设置环境。变量就像你在调用构建命令之前在“开始”中所做的那样。

"build:dev": "NODE_ENV=dev npm run build --dev --configuration=dev && react-scripts build"