suchen

Heim  >  Fragen und Antworten  >  Hauptteil

javascript - Beim Packen des Webpacks wurde js absichtlich in statisch platziert. Nach der Veröffentlichung wurde der Ersatz nicht wirksam.

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.

世界只因有你世界只因有你2780 Tage vor924

Antworte allen(3)Ich werde antworten

  • 巴扎黑

    巴扎黑2017-06-30 09:56:43

    配置 devServer 或者 webpack-dev-middleware webpack-hot-middleware

    Antwort
    0
  • 仅有的幸福

    仅有的幸福2017-06-30 09:56:43

    你watch了才会更新,不watch怎么会自动更新。

    Antwort
    0
  • ringa_lee

    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里面找到了测试的代码了。


    Antwort
    0
  • StornierenAntwort