Terdapat projek vux saya sengaja meletakkan beberapa JS dalam direktori statik, dan kemudian menggunakan keperluan untuk mendapatkannya
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
Gunakan seperti ini dalam vue:
var sysNav = require("../../static/modules/sysNav.js")
this.$data.navList = sysNav.default.navList
Masalahnya, apabila ia diletakkan secara statik, pembungkusan webpack ialah: npm run build, tiada masalah. Semasa penggunaan, saya mengubah suai sysNav.js ini, tetapi tidak kira bagaimana saya membersihkan cache, ia masih kandungan lama, seolah-olah saya tidak tahu di mana ia dicache. Saya berharap dengan mengubah suai fail ini secara dinamik, saya boleh mengemas kini sebahagian daripada kandungan. Dalam erti kata lain, bagaimana untuk membuat memerlukan membaca kandungan terkini setiap kali.
Konfigurasikan devServer atau webpack-dev-middleware webpack-hot-middleware
Ia akan dikemas kini hanya jika anda menontonnya. Bagaimanakah ia boleh dikemas kini secara automatik jika anda tidak menontonnya?
Adakah saya mengatakan ia terlalu rumit sebenarnya, sangat mudah untuk menghasilkan semula masalah ini.
Buat projek vue baharu, letakkan js dalam statik, dan kemudian perlukan js dalam vue, sebagai contoh, amaran.
npm run build, salin kandungan dalam dist ke pelayan web, ubah suai kandungan js secara statik, anda akan mendapati kandungan ini tidak akan berkuat kuasa.
Baik, soalan? Memandangkan selagi js diperlukan, js akan dibungkus. Mengapa saya masih melihat js ini dalam direktori statik? ? Tidakkah anda menipu diri sendiri dan orang lain? ?
Selepas ujian sebenar, kami mendapati bahawa selagi js diperlukan, webpack akan membungkus js terus ke dalam app.js, dan kemudian kandungan dalam statik akan disalin terus ke direktori dist utuh. Saya menemui kod ujian dalam app.js.