WebpackConfig中文件和插件的SourceMap路径

时间:2020-07-09 16:27:19

标签: webpack laravel-mix

此代码生成的地图文件的路径为:http://my-site.dev/resources/less/style.less

mix.webpackConfig({ 
output: { devtoolModuleFilenameTemplate: '[resource-path]' }, 
})
.sourceMaps(false, 'inline-source-map');

我需要路径: 文件:/// D:/my-site/resources/less/style.less 这对我没有帮助:

devtoolModuleFilenameTemplate: 'file:///D:/[namespace]'

我尝试了这个插件:https://webpack.js.org/plugins/source-map-dev-tool-plugin/

const SourceMapDevToolPlugin = require('source-map-dev-tool-plugin');
mix
  .webpackConfig({ 
    devtool: false,
    plugins: [
      
      new SourceMapDevToolPlugin({
        filename: "[file].map",
        moduleFilenameTemplate: '[absolute-resource-path]',
      }),
    ]

输出: 错误:ReferenceError:未定义SourceMapDevToolPlugin

我不知道如何安装Webpack插件。 我在const NpmInstallPlugin = require('npm-install-webpack-plugin')时遇到了同样的麻烦:
https://github.com/webpack-contrib/npm-install-webpack-plugin/issues/122

1 个答案:

答案 0 :(得分:0)

解决方案:

.webpackConfig({ output: {
  devtoolModuleFilenameTemplate: info => {
    let path = 'D:/my-site/resources/less/';
    return `file:///${path}${info.resourcePath.slice(2)}`;
  }
}
}).sourceMaps(false, 'inline-source-map');

遗憾的是,样式没有保存在“样式”标签中,但可以在“来源”中使用 styles