Gui*_*meB 3 google-chrome-extension webpack vue.js webpack-chain
我正在做一个 vue.js 应用程序。
构建后生成一个 js 文件“background.2a548437.js”而不是我想要的“background.js”。
我正在通过“vue.config.js”文件进行 webpack-chain 配置。
为了诊断,我正在阅读“$vue inspect”的结果,但我不知道应该调整哪个参数以从 js 文件中删除哈希。
我确实看到了像 'img/[name].[hash:8].[ext]' 这样的模式,但对于 js,它是 'js/[name].js'
您有任何解决方案或线索吗?
背景/原因:
它使用 webpack "^4.0.0" 和 webpack-chain "^6.3.1" 通过 "vue.config.js" 进行配置。
我正在做一个 chrome 插件,它有一个引用“background.js”的静态 manifest.json 文件。
我将深入研究让 webpack 使用正确的“background.[hash].js”文件构建 manifest.json 文件,但我认为如果我能找到在文件名中禁用哈希的选项会更容易
// vue.config.js
const CopyWebpackPlugin = require('copy-webpack-plugin');
module.exports = {
chainWebpack: config => {
// add your custom entry point
config
.entry('background')
.add('./src/background.ts');
},
configureWebpack: {
plugins: [
new CopyWebpackPlugin([
{ from: 'manifest.json', to: 'manifest.json', flatten: true },
]),
]
}
}
Run Code Online (Sandbox Code Playgroud)
编辑:$vue 检查的结果。它太长了所以我链接了一个 pastebin https://pastebin.com/fbRzgfhY
在花了很长时间试图了解 webpack-chain、webpack 及其插件的工作原理之后,我在 vue 文档中找到了简单的“filenameHashing”标志:https ://cli.vuejs.org/config/#indexpath
这是我的 vue.config.js 文件内容:
// vue.config.js
const CopyWebpackPlugin = require('copy-webpack-plugin');
module.exports = {
filenameHashing: false, // <=================line that matters
chainWebpack: config => {
// add your custom entry point
config
.entry('background')
.add('./src/background.ts');
},
configureWebpack: {
plugins: [
new CopyWebpackPlugin([
{ from: 'manifest.json', to: 'manifest.json', flatten: true },
]),
]
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1912 次 |
| 最近记录: |