Home > Article > Web Front-end > CDN optimizes first screen loading speed
This time I will bring you CDN to optimize the loading speed of the first screen. What are the precautions for CDN to optimize the loading speed of the first screen? The following is a practical case, let’s take a look.
Preface
As a website application, loading speed is very important. Loading speed, one is the reasonable arrangement of the program, such as on-demand loading of components, and the other is the asynchronous loading of js, css and other resources. In the Vue project, all js and css files introduced into the project will be packaged into vendor.js during compilation. The browser can only start to display the first screen after loading the file. If many libraries are introduced, the size of the vendor.js file will be quite large, affecting the initial opening experience. The solution is to separate the external js and css files External library files can use CDN resources or other server resources. Below, take the introduction of vue, vuex, and vue-router as an example to explain the processing flow.1. Resource introduction
In index.html, add CDN resources, such asbootstrap:
<body> <p id="app"></p> <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>
2. Add configuration
In the bulid/webpack.base.conf.js file, add externals and import the referenced external modules, as follows :module.exports = { entry: { app: './src/main.js' }, externals:{ 'vue': 'Vue', 'vue-router': 'VueRouter', 'vuex':'Vuex' }
Note:
The format is 'aaa' : 'bbb', where aaa represents the name of the resource to be imported, bbb indicates the name provided by the module to external references, which is customized by the corresponding library. For example, vue is Vue and vue-router is VueRouter.3. Remove the original reference
Remove the import, such as:// import Vue from 'vue' // import Router from 'vue-router'Remove Vue.use(XXX), such as:
// Vue.use(Router)
Test
Re-npm run build, you will see vendor The size of .js has decreased. Through the Network tool in developer mode, you can see that files such as vue.js, vuex.js, vendor.js, etc. are loaded by one thread respectively. And because of the use of CDN, the loading speed is faster than your own server. I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the php Chinese website! Recommended reading:Detailed steps for using JSON to submit data to the server
Vue.js improvement knowledge points summary
The above is the detailed content of CDN optimizes first screen loading speed. For more information, please follow other related articles on the PHP Chinese website!