Cordova 科尔多瓦+;网页包+;Vue.js=npm运行生成旧资产版本

Cordova 科尔多瓦+;网页包+;Vue.js=npm运行生成旧资产版本,cordova,npm,webpack,vue.js,vuejs2,Cordova,Npm,Webpack,Vue.js,Vuejs2,在这里,我遇到了我的项目cordova+vuejs2+webpack的一个问题 当我为生产生成(npm run build)时,webpack总是缓存我当前的/src中不存在的旧版本的资产,并且不加载我的新更改 我在/src中的内容在dev(npm-run-dev)中运行得很好,但在/dist/*(npm-run-build)中没有新映像时无法正确编译 我在配置中找不到位置,插件在其中进行了修改,以严格地构建/src/*,并且不缓存资产 如果有人有一个想法或已经遇到了这个问题-这将是伟大的 这里

在这里,我遇到了我的项目cordova+vuejs2+webpack的一个问题

当我为生产生成(
npm run build
)时,webpack总是缓存我当前的
/src
中不存在的旧版本的资产,并且不加载我的新更改

我在
/src
中的内容在dev(
npm-run-dev
)中运行得很好,但在
/dist/*
npm-run-build
)中没有新映像时无法正确编译

我在配置中找不到位置,插件在其中进行了修改,以严格地构建
/src/*
,并且不缓存资产

如果有人有一个想法或已经遇到了这个问题-这将是伟大的

这里附上的是屏幕截图,我们可以看到在dist中编译的资产和结果与
src/*

  • ,它保持缓存状态

这里是我的
config/index.js

“严格使用”
//模板版本:1.3.1
//看http://vuejs-templates.github.io/webpack 有关文件。
const path=require('路径')
module.exports={
开发人员:{
//配置开发
},
建造:{
//index.html的模板
index:path.resolve(uu dirname,'../www/dist/index.html'),
//路径
assetroot:path.resolve(_dirname,'../www/dist'),
资产子目录:“静态”,
资产公共路径:“”,
/**
*源地图
*/
productionSourceMap:正确,
// https://webpack.js.org/configuration/devtool/#production
devtool:“#源映射”,
//默认情况下,Gzip会关闭许多流行的静态主机,例如
//Surge或Netlify已经为您gzip所有静态资产。
//在设置为“true”之前,请确保:
//npm安装--保存开发压缩网页包插件
productionGzip:false,
Productiongzip扩展:['js','css'],
//运行带有额外参数的build命令,以
//生成完成后查看捆绑包分析器报告:
//`npm运行构建--报告`
//设置为'true'或'false'以始终打开或关闭它
bundleAnalyzerReport:process.env.npm\u配置报告
}
}
我在
build/webpack.prod.conf.js中的内容

“严格使用”
const path=require('路径')
const-utils=require(“./utils”)
const webpack=require('webpack')
const config=require(“../config”)
const merge=require('webpack-merge')
const baseWebpackConfig=require('./webpack.base.conf')
const CopyWebpackPlugin=require('copy-webpack-plugin')
const HtmlWebpackPlugin=require('html-webpack-plugin')
const ExtractTextPlugin=require('extract-text-webpack-plugin')
const OptimizeCSSPlugin=require('optimize-css-assets-webpack-plugin')
const UglifyJsPlugin=require('uglifyjs-webpack-plugin')
const env=process.env.NODE_env==“测试”
? 需要(“../config/test.env”)
:需要('../config/prod.env')
const webpackConfig=merge(baseWebpackConfig{
模块:{
规则:utils.styleLoaders({
sourceMap:config.build.productionSourceMap,
摘录:没错,
女士:是的
})
},
devtool:config.build.productionSourceMap?config.build.devtool:false,
输出:{
路径:config.build.assetsRoot,
文件名:utils.assetsPath('js/[name].[chunkhash].js'),
chunkFilename:utils.assetsPath('js/[id].[chunkhash].js')
},
插件:[
// http://vuejs.github.io/vue-loader/en/workflow/production.html
新的webpack.DefinePlugin({
“process.env”:env
}),
新的UglifyJsPlugin({
丑陋选项:{
压缩:{
警告:错误
}
},
sourceMap:config.build.productionSourceMap,
平行:对
}),
//将css提取到自己的文件中
新的ExtractTextPlugin({
文件名:utils.assetsPath('css/[name].[contenthash].css'),
//将以下选项设置为'false'将不会从codesplit块中提取CSS。
//当webpack加载codesplit块时,它们的CSS将使用样式加载器动态插入。
//它当前设置为'true',因为我们看到当它为'false'时,sourcemaps也包含在codesplit捆绑包中,
//增加文件大小:https://github.com/vuejs-templates/webpack/issues/1110
allChunks:是的,
}),
//压缩提取的CSS。我们正在使用这个插件,以便
//来自不同组件的重复CSS可以被重复。
新优化器cssplugin({
cssProcessorOptions:config.build.productionSourceMap
?{safe:true,map:{inline:false}
:{safe:true}
}),
//使用正确的资产哈希生成dist index.html以进行缓存。
//您可以通过编辑/index.html自定义输出
//看https://github.com/ampedandwired/html-webpack-plugin
新HtmlWebpackPlugin({
文件名:process.env.NODE_env===“测试”
?'index.html'
:config.build.index,
模板:“index.html”,
是的,
缩小:{
removeComments:对,
拼贴空白:对,
RemoveAttribute属性:true
//更多选择:
// https://github.com/kangax/html-minifier#options-快速参考
},
//必须通过CommonChunkPlugin一致地处理多个块
ChunkstortMode:“依赖项”
}),
//供应商模块不变时,保持module.id稳定
//新建webpack.HashedModuleIdsPlugin(),
//启用范围提升
新建webpack.optimize.ModuleConnectionPlugin(),
//将供应商js拆分为自己的文件
新建webpack.optimize.commonChunkPlugin({
名称:'供应商',
minChunks(模块){
//节点_模块内的任何所需模块将提取给供应商
返回(
模块资源&&
/\.js$/.test(module.resource)&&
module.resource.indexOf(
路径连接(\uu\d