如何禁用 React JS 应用程序的源映射
How to disable source maps for React JS Application
我的react文件夹结构如下
我没有使用过 create-react-app 版本。我尝试使用 GENERATE_SOURCEMAP=false
。但是没用。
在哪里可以找到 .map 文件。我怎样才能删除这些文件?
我找不到构建文件夹。
我试过使用下面的脚本但是它无法删除源映射
"scripts": {
"start": "react-scripts start",
"build": "GENERATE_SOURCEMAP=false && npm run build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
},
只需删除 &&
"scripts": {
"start": "react-scripts start",
"build": "GENERATE_SOURCEMAP=false react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
这对我有用。希望对大家有帮助。
// package.json
"build": "react-scripts build",
"postbuild": "rimraf build/**/*.map"
这样,它会在构建生成期间自动删除地图文件。
create-react-app v2.1.3弹出的解决方法
转到 /config/webpack.config.js 目录并更改以下行:
const shouldUseSourceMap = process.env.GENERATE_SOURCEMAP !== 'false';
收件人:
const shouldUseSourceMap = false;
鲍勃是你的叔叔。
您必须在您的根目录(与 package.json
相同的文件夹)中创建一个 .env
文件,并在一行中设置 GENERATE_SOURCEMAP=false
。
更多配置,您可以参考这里的文档:
https://facebook.github.io/create-react-app/docs/advanced-configuration
对于 windows cmd 和 create-react-app + react-scripts,
您应该使用 set 并以 \" YOUR_TMP_ENV_VAR \"
结束
参见示例:
"deploy:prod:hosting": "set \"GENERATE_SOURCEMAP=false\" && npm run build
这个答案帮助了我:
经过长时间的斗争,没有任何效果。最后对我有用的是
更改 sourcemap: 在 nodemodules/react-script/config 内的 webpack.config.prod.js 中为 false
希望它也对你有用。
我已经测试过并且有效的是将此代码添加到您的 .env.production
文件或 .env
文件中
GENERATE_SOURCEMAP=false
解决方案 1
编辑您的 package.json
,如下所示:
- Windows:
"scripts": {
"start": "react-scripts start",
"build": "set \"GENERATE_SOURCEMAP=false\" && react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
- Linux:
"scripts": {
"start": "react-scripts start",
"build": "GENERATE_SOURCEMAP=false react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
方案二(推荐)
此解决方案不 操作系统相关并且适用于Linux 和Windows。只需在项目的根路径中创建一个名为 .env
的文件,并向其中添加以下行:
GENERATE_SOURCEMAP=false
把这个放在你的 package.json
"build": "cross-env GENERATE_SOURCEMAP=false react-scripts build",
适用于 Windows 和 Linux...
只需在 .env
中添加 GENERATE_SOURCEMAP=false
我的react文件夹结构如下
我没有使用过 create-react-app 版本。我尝试使用 GENERATE_SOURCEMAP=false
。但是没用。
在哪里可以找到 .map 文件。我怎样才能删除这些文件?
我找不到构建文件夹。 我试过使用下面的脚本但是它无法删除源映射
"scripts": {
"start": "react-scripts start",
"build": "GENERATE_SOURCEMAP=false && npm run build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
},
只需删除 &&
"scripts": {
"start": "react-scripts start",
"build": "GENERATE_SOURCEMAP=false react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject"
}
这对我有用。希望对大家有帮助。
// package.json
"build": "react-scripts build",
"postbuild": "rimraf build/**/*.map"
这样,它会在构建生成期间自动删除地图文件。
create-react-app v2.1.3弹出的解决方法
转到 /config/webpack.config.js 目录并更改以下行:
const shouldUseSourceMap = process.env.GENERATE_SOURCEMAP !== 'false';
收件人:
const shouldUseSourceMap = false;
鲍勃是你的叔叔。
您必须在您的根目录(与 package.json
相同的文件夹)中创建一个 .env
文件,并在一行中设置 GENERATE_SOURCEMAP=false
。
更多配置,您可以参考这里的文档: https://facebook.github.io/create-react-app/docs/advanced-configuration
对于 windows cmd 和 create-react-app + react-scripts,
您应该使用 set 并以 \" YOUR_TMP_ENV_VAR \"
结束参见示例:
"deploy:prod:hosting": "set \"GENERATE_SOURCEMAP=false\" && npm run build
这个答案帮助了我:
经过长时间的斗争,没有任何效果。最后对我有用的是 更改 sourcemap: 在 nodemodules/react-script/config 内的 webpack.config.prod.js 中为 false 希望它也对你有用。
我已经测试过并且有效的是将此代码添加到您的 .env.production
文件或 .env
文件中
GENERATE_SOURCEMAP=false
解决方案 1
编辑您的 package.json
,如下所示:
- Windows:
"scripts": {
"start": "react-scripts start",
"build": "set \"GENERATE_SOURCEMAP=false\" && react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
- Linux:
"scripts": {
"start": "react-scripts start",
"build": "GENERATE_SOURCEMAP=false react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
方案二(推荐)
此解决方案不 操作系统相关并且适用于Linux 和Windows。只需在项目的根路径中创建一个名为 .env
的文件,并向其中添加以下行:
GENERATE_SOURCEMAP=false
把这个放在你的 package.json
"build": "cross-env GENERATE_SOURCEMAP=false react-scripts build",
适用于 Windows 和 Linux...
只需在 .env
GENERATE_SOURCEMAP=false