webpack - Laravel Mix Sourcemaps 不为生产构建生成
问题描述
我的 Laravel Mix 脚本有以下 webpack.mix.js 设置:
let mix = require('laravel-mix');
let LiveReloadPlugin = require('webpack-livereload-plugin');
mix.webpackConfig({
plugins: [
new LiveReloadPlugin({
port: '35729',
})
],
});
if (mix.inProduction()) {
mix.disableNotifications();
}
mix
.options({
postCss: [
require('autoprefixer'),
],
processCssUrls: false,
})
.setPublicPath('./static')
.sass('./resources/sass/app.scss', 'css')
.sourceMaps(true, 'source-map')
.version();
mix
.options({
postCss: [
require('autoprefixer'),
],
processCssUrls: false,
})
.setPublicPath('./static')
.sass('./resources/sass/login.scss', 'css')
.sourceMaps(true, 'source-map')
.version();
当我运行时,npm run development
我得到以下输出(包括 Sourcemaps)
DONE Compiled successfully in 5987ms 12:35:24
Asset Size Chunks Chunk Names
css/app.css 343 KiB mix [emitted] mix
css/app.css.map 400 KiB mix [emitted] [dev] mix
css/login.css 163 KiB mix [emitted] mix
css/login.css.map 236 KiB mix [emitted] [dev] mix
mix.js.map 3.73 KiB mix [emitted] [dev] mix
但是,如果我运行,npm run production
我会得到以下输出(没有 Sourcemaps)
DONE Compiled successfully in 9029ms 12:33:57
Asset Size Chunks Chunk Names
css/app.css 278 KiB 0 [emitted] [big] mix
css/login.css 129 KiB 0 [emitted] mix
mix.js.map 4.52 KiB 0 [emitted] [dev] mix
我正在使用 Laravel Mix 5.0.1,并且无法通过其他错误问题/SO 问题找到解决方案——它们似乎都与无法进行开发和修复它的源地图devtools: 'inline-source-map'
有关,这与此处无关。
正如 webpack 文档所建议的那样(https://webpack.js.org/configuration/devtool/#devtool),我唯一能想到的是缩小导致问题:
如果默认的 webpack 最小化器已被覆盖(例如自定义 terser-webpack-plugin 选项),请确保将其替换为 sourceMap: true 以启用 SourceMap 支持。
不过,我找不到任何有关 Laravel Mix 的文档来支持这一点。
知道如何解决这个问题吗?
解决方案
推荐阅读
- sql - Select, Left Join 和 Group By 中的情况
- python - 如何在 python 中的 groupby 中向聚合中添加函数?
- html - 溢出:隐藏没有被伪元素填充 100%?
- javascript - Uglify3 中的“sym.definition”是什么?
- uwp - 如何等待用户控件?
- c# - 当前上下文中不存在名称“ARSubsystemManager”
- c# - Excel 互操作应用程序与 Office 2016 的问题
- c++ - 混淆如何编写一个 for 循环,包括 c++ 中的所有加法
- sql - 编写一个查询,返回所有父母,然后是孩子
- azure-pipelines - 如何限制 Azure Pipelines 中多个/并行构建的数量?