vue-cli3.0 资源加载的优化方案

26

20180829 更新

今天反复试了,不用区分 测试环境还是 生产环境,统一都用 cdn 就可以了

背景

之前自己搭建了一个 vue + tp5.1 的后台项目(https://segmentfault.com/a/11...),坑很多,其中一个就是资源加载的方案,由于是后台项目,之前一直没放在心上,看到一些资源优化方案后(https://juejin.im/post/5a2910...),觉得有必要弄一下。

老版本

通过:npm run build 后

图片描述

可以看到, 文件大小最大的 820kb,即使用 Gzipped 压缩后也是 219kb,随着项目不断变大,这个值还会不断增大

使用CDN加速

这里请先参考 https://juejin.im/post/5a2910...,这里只做vue-cli@3.0的配置修改

  • index.html文件
<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width,initial-scale=1.0">
    <link rel="icon" href="<%= BASE_URL %>favicon.ico">
    <title>VUE后台管理系统</title>
    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
</head>
<body>
<div id="app"></div>
<!-- built files will be auto injected -->
<script src="https://unpkg.com/vue@2.5.16/dist/vue.runtime.min.js"></script>
<script src="https://unpkg.com/vuex@3.0.1/dist/vuex.min.js"></script>
<script src="https://unpkg.com/vue-router@3.0.1/dist/vue-router.min.js"></script>
<script src="https://unpkg.com/element-ui/lib/index.js"></script>

</body>

</html>

  • vue.config.js 文件
module.exports = {
    baseUrl: process.env.NODE_ENV === "production" ? "./" : "/",
    outputDir: process.env.outputDir,
    configureWebpack: {
        externals: {
            vue: "Vue",
            vuex: "Vuex",
            "vue-router": "VueRouter",
            "element-ui": "ELEMENT"
        }
    }
};

页面优化后

图片描述

你可能感兴趣的

小纯纯 · 2018年08月29日

为什么系统都登录失败了?

回复

0

恩,感谢提出,因为 重新构建时忘记把 mock 模拟数据 打开了

lmxdawn 作者 · 2018年08月29日
晴窗一扇 · 2018年12月14日

想问一个问题:在vue.config.js 文件里面引入 configureWebpack: config => {
config.externals={

"element-ui": "ElementUI",
'v-charts':'VCharts',
'echarts': 'echarts',

}
}
,因为的文件放在,app.js后面,却人页面加载顺序没有问题,但是页面报错说找不到组件

回复

0

你代码最后放在 github上,贴出来,不然我不知道报什么错

lmxdawn 作者 · 2018年12月14日
0

@兰茗翔 项目没有在GitHub上面,能私发给你嘛?报错截图给吗?

晴窗一扇 · 2018年12月14日
0

私信给我吧

lmxdawn 作者 · 2018年12月14日
载入中...