返回介绍

138.按需加载@减小打包

发布于 2020-09-14 22:20:38 字数 4334 浏览 1310 评论 0 收藏 0

按需引入组件依赖

Ant Design Pro Vue 默认编码工作并不支持按需引入,不过可以通过以下操作结合 Ant Design Of Vue 官方文档来进行按需引入。

  • 增加项目按需引入依赖
  • 修改引入组件方式
  1. 增加按需引入所需依赖 babel-plugin-import 并且修改文件 babel.config.js ```ecmascript 6 module.exports = { presets: [
    '@vue/app'
    
    ], plugins: [
    [ "import", {
      "libraryName": "ant-design-vue",
      "libraryDirectory": "es",
      "style": "css"
    } ]
    
    ] } ```
  1. 修改引入组件方式 (注意,这只是一个例子,请完整引入你所需要的组件)

    文件 @/components/use.js

    import Vue from 'vue'
    import {
        Input, 
        Button, 
        Select, 
        Card, 
        Form, 
        Row, 
        Col, 
        Modal, 
        Table, 
        notification
    } from 'ant-design-vue'
    
    Vue.use(Input)
    Vue.use(Button)
    Vue.use(Select)
    Vue.use(Card)
    Vue.use(Form)
    Vue.use(Row)
    Vue.use(Col)
    Vue.use(Modal)
    Vue.use(Table)
    Vue.use(notification)
    
    Vue.prototype.$notification = notification;
    
  1. 最后在 main.js 中引入 @/components/use.js 文件即可,如下

    ```javascript

    import Vue from 'vue' import App from './App'

    // 引入 按需组件的统一引入文件 import './components/use'

    import './style/index.less'

Vue.config.productionTip = false

new Vue({ render: h => h(App), }).$mount('#app')

```

参考资料示例

完整组件列表 ant-design-vue 按需加载 相关文档

feature/demand_load

其他 减少打包大小

  1. Ant Design Vue 1.2.x 版本起,采用的 ant-design 官方方案 svg Icon 组件,整个项目打包会变大很多,图标进行按需加载可参考: https://github.com/HeskeyBaozi/reduce-antd-icons-bundle-demo
  2. moment 按需加载 可参考: https://github.com/jmblog/how-to-optimize-momentjs-with-webpack

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文