• nuxt中iview按需加载配置


    在plugins/iview.js中修改

    初始代码如下

    import Vue from 'vue'
    import iView from 'iview'
    import locale from 'iview/dist/locale/en-US' // Change locale, check node_modules/iview/dist/locale
    
    Vue.use(iView, {
      locale
    })

    修改成如下代码

    import Vue from 'vue'
    import './iview-ui.less'
    
    import {
      Alert,
      AutoComplete,
      Avatar,
      BackTop,
      Badge,
      Breadcrumb,
      BreadcrumbItem,
      Button,
      ButtonGroup,
      Card,
      Carousel,
      CarouselItem,
      Cascader,
      Checkbox,
      CheckboxGroup,
      Circle,
      Col,
      Collapse,
      ColorPicker,
      Content,
      DatePicker,
      Divider,
      Drawer,
      Dropdown,
      DropdownItem,
      DropdownMenu,
      Footer,
      Form,
      FormItem,
      Header,
      Icon,
      Input,
      InputNumber,
      Scroll,
      Sider,
      Submenu,
      Layout,
      LoadingBar,
      Menu,
      MenuGroup,
      MenuItem,
      Message,
      Modal,
      Notice,
      Option,
      OptionGroup,
      Page,
      Panel,
      Poptip,
      Progress,
      Radio,
      RadioGroup,
      Rate,
      Row,
      Select,
      Slider,
      Spin,
      Step,
      Steps,
      Switch,
      Table,
      Tabs,
      TabPane,
      Tag,
      Timeline,
      TimelineItem,
      TimePicker,
      Tooltip,
      Transfer,
      Tree,
      Upload
    } from 'iview'
    // iview基础模块
    const components = {
      Alert,
      AutoComplete,
      Avatar,
      BackTop,
      Badge,
      Breadcrumb,
      BreadcrumbItem,
      Button,
      ButtonGroup,
      Card,
      Carousel,
      CarouselItem,
      Cascader,
      Checkbox,
      CheckboxGroup,
      Col,
      Collapse,
      ColorPicker,
      Content,
      DatePicker,
      Divider,
      Drawer,
      Dropdown,
      DropdownItem,
      DropdownMenu,
      Footer,
      Form,
      FormItem,
      Header,
      Icon,
      Input,
      InputNumber,
      Scroll,
      Sider,
      Submenu,
      Layout,
      LoadingBar,
      Menu,
      MenuGroup,
      MenuItem,
      Message,
      Modal,
      Notice,
      Option,
      OptionGroup,
      Page,
      Panel,
      Poptip,
      Progress,
      Radio,
      RadioGroup,
      Rate,
      Row,
      Select,
      Slider,
      Spin,
      Step,
      Steps,
      Table,
      Tabs,
      TabPane,
      Tag,
      Timeline,
      TimelineItem,
      TimePicker,
      Tooltip,
      Transfer,
      Tree,
      Upload
    }
    
    const iviewModule = {
      ...components,
      // 不能和html标签重复的组件,添加别名(除了Switch、Circle在使用中必须是iSwitch、iCircle,其他都可以不加"i")
      iButton: Button,
      iCircle: Circle,
      iCol: Col,
      iContent: Content,
      iForm: Form,
      iFooter: Footer,
      iHeader: Header,
      iInput: Input,
      iMenu: Menu,
      iOption: Option,
      iProgress: Progress,
      iSelect: Select,
      iSwitch: Switch,
      iTable: Table
    }
    // 循环注册全局组件
    Object.keys(iviewModule).forEach(key => {
      Vue.component(key, iviewModule[key])
    })
    
    // 将iview模块挂载到vue对象上去
    Vue.prototype.$Loading = LoadingBar
    Vue.prototype.$Message = Message
    Vue.prototype.$Modal = Modal
    Vue.prototype.$Notice = Notice
    Vue.prototype.$Spin = Spin
  • 相关阅读:
    MDCFilter
    SpringCloud组件:Eureka服务注册用ip或主机名
    git查看分支创建于哪个分支
    关于FeignClient使用大全
    tinyint能不能保存负数
    QCon 回顾 | Data Fabric:逻辑统一、物理分散
    国产开源存储之光:Curve 通过信创认证
    有数大数据基础平台之智能运维平台EasyEagle介绍:集群队列篇
    数据治理体系演进简介
    Arctic开源!网易数帆×华泰证券,推动湖仓一体落地
  • 原文地址:https://www.cnblogs.com/ToBeBest/p/11696800.html
Copyright © 2020-2023  润新知