美文网首页vue学习
Vue中使用cdn加载资源

Vue中使用cdn加载资源

作者: 年轻人多学点 | 来源:发表于2020-12-08 19:10 被阅读0次

搭建vue的时候,一般都使用vue官方推荐的命令行工具。需要打包的时候,默认会把所有代码合并生产新文件,其中包括各种库,就会导致打包出来很大。如果使用cdn的话,会更利于程序的加载速度。

在Vue项目中,引入到工程中的所有js、css文件,编译时都会被打包进vendor.js,浏览器在加载该文件之后才能开始显示首屏。若是引入的库众多,那么vendor.js文件体积将会相当的大,影响首开的体验。

解决方法是,将引用的外部js、css文件剥离开来,不编译到vendor.js中,而是用资源的形式引用,这样浏览器可以使用多个线程异步将vendor.js、外部的js等加载下来,达到加速首开的目的。

外部的库文件,可以使用CDN资源,或者别的服务器资源等。

下面,以引入vue、vuex、vue-router为例,说明处理流程。

一、资源引入

在index.html中,添加CDN资源,例如bootstrap上的资源:

<body>
<div id="app"></div>
<script src="https://cdn.bootcss.com/vue/2.5.2/vue.min.js"></script>
<script src="https://cdn.bootcss.com/vue-router/3.0.1/vue-router.min.js"></script>
<script src="https://cdn.bootcss.com/vuex/3.0.1/vuex.min.js"></script>
</body>

二、添加配置

在bulid/webpack.base.conf.js文件中,增加externals,将引用的外部模块导入,如下:

module.exports = {
entry: {
app: './src/main.js'
},
externals:{
'vue': 'Vue',
'vue-router': 'VueRouter',
'vuex':'Vuex'
}

注意一点:

格式为 'aaa' : 'bbb', 其中,aaa表示要引入的资源的名字,bbb表示该模块提供给外部引用的名字,由对应的库自定。例如,vue为Vue,vue-router为VueRouter.

三、去掉原有的引用

去掉import,如:

// import Vue from 'vue'
// import Router from 'vue-router'

去掉Vue.use(XXX),如:

Vue.use(Router)

测试

重新npm run build,会看到 vendor.js体积有所下降了。我自已的个人主页中,将所有的外部模块,使用CDN引入之后,vendor.js从1M,降为30k左右。

通过开发者模式的Network工具,可以看到vue.js、vuex.js、vendor.js等文件会分别由一个线程进行加载。且因为使用了CDN,减轻了带宽压力。

相关文章

  • Vue中使用cdn加载资源

    搭建vue的时候,一般都使用vue官方推荐的命令行工具[https://cn.vuejs.org/v2/guide...

  • vue-cli publicpath 设置 cdn 路由问题

    最近在配置由 vue-cli 搭建的项目中使用 CDN 资源,根据文档介绍将 publicPath 设置为 CDN...

  • vue动态加载js和css

    vue动态加载js和css vue项目第一次加载很慢的,发现在第一次加载要很大的js导致卡顿、可以使用cdn加速和...

  • vue使用cdn引入vue和element-ui

    #vue使用cdn引入vue和element-ui # element-ui 关于使用cdn引入方式报错 Refe...

  • 使用jsDeliver+github搭建免费的cdn

    前言:国内加载github的资源比较慢,需要使用CDN加速来优化网站打开速度,于是使用jsDeliver+gith...

  • Vue-img-preload

    vue-img-preload 预加载页面上的图片资源,提高用户体验 使用方法 浏览器中 下载vue-img-pr...

  • 【vue】如何引用外部cdn资源

    在使用vue-cli进行项目构建时,有时是需要引用外部cdn资源的,生产环境中可以直接在index.html的头部...

  • Cannot read property 'call' of u

    出现前提 使用了react代码分割 使用了cdn部署静态资源文件 服务端有缓存 原因 由于使用了代码分割,所以加载...

  • 使用cdn加载vue.js

    搭建vue的时候,一般都使用vue官方推荐的命令行工具。 在编写完,需要打包的时候,默认会把所有代码合并生产新文件...

  • vue cli3使用CDN资源优化加载速度

    通常我们需要优化加载速度的时候,在众多的优化当中,可以使用link代替import,避免过多的import让加载变...

网友评论

    本文标题:Vue中使用cdn加载资源

    本文链接:https://www.haomeiwen.com/subject/keyqgktx.html