Utilisation vue
du webpack
modèle de projet de développement de temps, en utilisant npm install
les différents composants de l'installation en fonction et à la section locale par
défaut par import
un tiers dépendances partie syntaxe introduites finira par être fusionnés en un seul fichier de package
résultant seul fichier est compressé avec succès problème trop important
Afin de résoudre le problème webpack
, le externals
nœud peut être configuré et chargé avec des CDN
ressources externes .
Tout externals
package de dépendance tiers déclaré dans ne sera pas conditionné.
taille préemballée n'est pas configuré 最下面有配置完之后再次打包的大小
par vue-cli 3.0
le projet généré par défaut cache tous webpack
les éléments de configuration
si vous avez modifié webpack
les exigences de configuration par défaut peuvent être créées à la demande dans le répertoire racine du projet vue.config.js
fichier
afin que le processus de faire le projet de distribuer une configuration personnalisée
répertoire racine du projet nouveau vue.config.js
ici en plus d' une chainWebpack
entrée package personnalisé
chainWebpack
étape
dans src
dans le répertoire de fichiers de la nouvelle main-prod.js
et main-dev.js
l'original main.js
copier tout le contenu du nouveau js
où
le contenu à l' intérieur des deux courant identique supprimé le fichier d' originemain.js
En vue.config.js
ajoutant ce qui suit la chainWebpack
configuration
module.exports = {
chainWebpack: config => {
// 发布模式
config.when(process.env.NODE_ENV === 'production', config => {
config.entry('app').clear().add('./src/main-prod.js')
})
// 开发模式
config.when(process.env.NODE_ENV === 'development', config => {
config.entry('app').clear().add('./src/main-dev.js')
})
}
}
Et puis externals
arrangé avec un plus ici est utilisé dans le paquet de projet mis en place
config.set('externals', {
vue: 'Vue',
'vue-router': 'VueRouter',
axios: 'axios',
lodash: '_',
echarts: 'echarts',
nprogress: 'NProgress',
'vue-quill-editor': 'VueQuillEditor'
})
Après l' achèvement de l'addition
, puis main-prod.js
supprimez les fichiers dans le paquet introduit les css
documents
ici et supprimez le fichier référencé n'est pas le même, selon le projet
alors besoin d' public/index.html
ajouter le fichier d' en- tête CDN
référence de ressource
citée est la valeur ajoutée config.set
fichier
dernier dans vue ui
le panneau pour exécuter build
la tâche Après un emballage réussi, la taille du fichier est beaucoup plus petite