recherche

Maison  >  Questions et réponses  >  le corps du texte

javascript - Lors du package du webpack, js a été délibérément placé en statique après la publication, le remplacement n'a pas pris effet.

Il existe un projet vux. J'ai délibérément placé du JS dans le répertoire statique, puis j'ai utilisé require pour l'obtenir. Le contenu du JS est le suivant :

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

Utilisez comme ceci en vue :

var sysNav = require("../../static/modules/sysNav.js")
        this.$data.navList = sysNav.default.navList

Le problème est que lorsqu'il est placé dans un emballage webpack statique, c'est : npm run build, il n'y a pas de problème. Pendant l'utilisation, j'ai modifié ce sysNav.js, mais peu importe la façon dont je nettoie le cache, c'est toujours l'ancien contenu, comme si je ne savais pas où il est mis en cache. J'espère qu'en modifiant dynamiquement ce fichier, je pourrai mettre à jour une partie du contenu. En d’autres termes, comment exiger de lire le contenu le plus récent à chaque fois.

世界只因有你世界只因有你2709 Il y a quelques jours899

répondre à tous(3)je répondrai

  • 巴扎黑

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

    Configurer devServer ou webpack-dev-middleware webpack-hot-middleware

    répondre
    0
  • 仅有的幸福

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

    Il ne sera mis à jour que si vous le regardez. Comment peut-il être mis à jour automatiquement si vous ne le regardez pas ?

    répondre
    0
  • ringa_lee

    ringa_lee2017-06-30 09:56:43

    Ai-je dit que c'était trop compliqué ? En fait, il est très simple de reproduire ce problème.

    Créez un nouveau projet vue, mettez un js en statique, puis exigez le js dans vue, par exemple, alert.

    npm exécutez build, copiez le contenu de dist sur le serveur web, modifiez le contenu de js en statique, vous constaterez que ce contenu ne prendra pas effet.

    D'accord, une question ? Puisque tant qu'un js est requis, le js sera empaqueté. Pourquoi est-ce que je vois toujours ce js dans le répertoire statique ? ? Ne vous trompez-vous pas vous-même et les autres ? ?


    Après des tests réels, nous avons constaté que tant qu'un js est requis, webpack emballera le js directement dans app.js, puis le contenu statique sera copié directement dans le répertoire dist intact. J'ai trouvé le code de test dans app.js.


    répondre
    0
  • Annulerrépondre