vuecli4——CDN分发

本文详细介绍如何在Vue项目中移除预加载和预取插件,仅在分析阶段启用bundle分析,并配置HTMLWebpackPlugin使用CDN加速资源加载。还展示了如何在index.html中添加Vue及Element UI等外部库的链接和脚本。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

vue.config.js配置

注意:vue的js链接一定要在其他的上面

chainWebpack: config => {
        // 移除 preload(预载) 插件
        config.plugins.delete('preload')
        // 移除 prefetch(预取) 插件
        config.plugins.delete('prefetch')
        // npm run analyzer 时才开启
        if (process.env.npm_config_report) {
            config
                .plugin('webpack-bundle-analyzer')
                .use(BundleAnalyzerPlugin) // 分析项目文件大小的插件
        }
        config
            .plugin('webpack-bundle-analyzer')
            .use(BundleAnalyzerPlugin) // 分析项目文件大小的插件
            
        // 添加 CDN 参数到 htmlWebpackPlugin 配置中
        config.plugin('html').tap(args => {
            args[0].cdn = {
                js: [
                    'https://cdn.bootcdn.net/ajax/libs/vue/2.6.11/vue.min.js',//*******
                    'https://cdn.bootcdn.net/ajax/libs/element-ui/2.15.7/index.js',
                    'https://cdn.bootcdn.net/ajax/libs/vuex/3.2.0/vuex.min.js',
                    'https://cdn.bootcdn.net/ajax/libs/vue-router/3.0.1/vue-router.min.js',
                ],
                css: [
                    'https://cdn.bootcdn.net/ajax/libs/element-ui/2.15.7/theme-chalk/index.min.css',
                ],
            }
            return args
        })
        config.externals({
            // 这里的 element-ui 是 import xx from yy 中的 yy 包名。ELEMENT 是文件导出的全局变量名字
            vue: 'Vue',
            'element-ui': 'ELEMENT',
            vuex: "Vuex",
            "vue-router": "VueRouter",
        })
     
    },

index.html文件添加外链文件路径

header标签内加css

   <% for (let i in htmlWebpackPlugin.options.cdn.css) { %>
   <link rel="stylesheet" href="<%= htmlWebpackPlugin.options.cdn.css[i] %>" />
   <% } %>

body标签里面加js
注意:一定要加在app的前面

  <% for (let i in htmlWebpackPlugin.options.cdn.js) { %>
  <script type="text/javascript" src="<%= htmlWebpackPlugin.options.cdn.js[i] %>"></script>
  <% } %>
  <div id="app"></div>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值