Heim > Fragen und Antworten > Hauptteil
Es gibt ein Vux-Projekt, das ich absichtlich im statischen Verzeichnis abgelegt und dann require verwendet habe, um es abzurufen:
var sysNavDefine = {
name: 'sysNavDefine',
navList: [ {
path: '/listView',
name: 'listView',
imgSrc: '../../static/images/home/email.png',
desc: '网络通讯',
query: {
tableName: 'EmailDet',
tableAlias: 'InBox',
pageSize: 20,
pageIndex: 1
}
}, {
path: '/listView',
name: 'listView',
imgSrc: '../../static/images/home/wfCurrentStep.png',
desc: '审批任务',
query: {
tableName: 'wfCurrentStep',
tableAlias: '',
pageSize: 20,
pageIndex: 1
}
}
]
}
export default sysNavDefine
Verwenden Sie dies in Vue:
var sysNav = require("../../static/modules/sysNav.js")
this.$data.navList = sysNav.default.navList
Das Problem besteht darin, dass es kein Problem gibt, wenn es in einer statischen Webpack-Verpackung platziert wird: npm run build. Während der Verwendung habe ich diese sysNav.js geändert, aber egal wie ich den Cache bereinige, es ist immer noch der alte Inhalt, als ob ich nicht wüsste, wo er zwischengespeichert ist. Ich hoffe, dass ich durch die dynamische Änderung dieser Datei einen Teil des Inhalts aktualisieren kann. Mit anderen Worten, wie man dafür sorgt, dass immer die neuesten Inhalte gelesen werden müssen.
ringa_lee2017-06-30 09:56:43
是不是我说的太复杂了,其实重现这个问题很简单。
新建一个vue的项目,在static里面放入一个js,然后,在vue里面require这个js,例如alert一下。
npm run build,把dist里面的内容,都拷贝到web服务器,修改static里面的js的内容,你会发现,这个内容不会生效。
好了问题来?既然只要require一个js,就会把js打包进去。为什么还会在static目录里面看到这个js??岂不是自欺欺人了吗??
经过实际测试,发现只要require一个js,webpack就会把这个js直接打包到app.js里面,然后static里面的内容是原封不动的直接拷贝到dist目录。我在app.js里面找到了测试的代码了。