当前位置: 首页 > news >正文

上海大型网站建设西安高端网站建设

上海大型网站建设,西安高端网站建设,北京装修公司口碑最好的是哪家,千博网站后台因为我们要根据路由配置对应的图标,也要为了后续方便更改。因此我们将所有的图标注册为全局组件。(使用之前将分页器以及矢量图注册全局组件的自定义插件)(所有图标全局注册的方法element-plus文档中已给出) 全局注册…

因为我们要根据路由配置对应的图标,也要为了后续方便更改。因此我们将所有的图标注册为全局组件。(使用之前将分页器以及矢量图注册全局组件的自定义插件)(所有图标全局注册的方法element-plus文档中已给出)

全局注册elementPlus图标

在这里插入图片描述
经过上面的步骤,就可以把elementPlus自带的icon图标全局注册了。

路由使用elementPlus图标

给路由元信息添加属性:icon
layout和其子组件为例:首先在element-puls找到你要使用的图标的名字。将它添加到路由元信息的icon属性上

{//登录成功以后展示数据的路由path: '/',component: () => import('@/layout/index.vue'),name: 'layout',meta: {title: 'layout',hidden: false,icon: 'Avatar',//elementPlus中的图标},children: [{path: '/home',component: () => import('@/views/home/index.vue'),meta: {title: '首页',hidden: false,icon: 'HomeFilled',//elementPlus中的图标},},],
},

外部引入的svg图标——vite.config.js中批量引入

在这里插入图片描述

import { createSvgIconsPlugin } from 'vite-plugin-svg-icons';
export default defineConfig(({command,mode})=>{const env = loadEnv(mode,process.cwd())return {plugins:[vue(),AutoImport({resolvers: [ElementPlusResolver(),IconsResolver({prefix: 'Icon',}),],}),Components({resolvers: [ElementPlusResolver(),IconsResolver({enabledCollections: ['ep'],}),],}),Icons({autoInstall: true,}),createSvgIconsPlugin({// Specify the icon folder to be cachediconDirs: [path.resolve(process.cwd(), 'src/assets/icons')],// Specify symbolId formatsymbolId: 'icon-[dir]-[name]',}),]}
})

然后svg图标的使用,例如全屏图标:

<el-button icon="FullScreen" circle @click="fullScreen" />

顺道写下全屏功能的实现:

<script lang="ts" setup>
import {reactive,ref} from 'vue';
//全屏功能
const fullScreen = ()=>{//用来判断是不是全屏,返回布尔值const full = document.fullscreenElement//有兼容问题if(full){document.exitFullscreen();}else{document.documentElement.requestFullscreen();}
}
</script>

在这里插入图片描述

components中的组件全局批量注册——避免使用时多次引入

在这里插入图片描述

步骤一:在components文件夹中新建index.ts文件

步骤二:在index.ts文件中引入各个组件

import SvgIcon from './SvgIcon/index.vue'
import Category from '@/components/Category/index.vue'

步骤三:使用vue中的AppComponent

import type { App, Component } from 'vue'
const allGlobalComponent: Component = { SvgIcon, Category }

步骤四:使用install方法来处理

export default {install(app: App) {Object.keys(allGlobalComponent).forEach((key: string) => {// 注册为全局组件app.component(key, allGlobalComponent[key])})},
}

结合文章中第一步的全局引入elementPlus图标,也可以放在此文件中:
完整代码如下:

import SvgIcon from './SvgIcon/index.vue'
import Category from '@/components/Category/index.vue'
import type { App, Component } from 'vue'
import * as ElementPlusIconsVue from '@element-plus/icons-vue'
const allGlobalComponent: Component = { SvgIcon, Category }
export default {install(app: App) {Object.keys(allGlobalComponent).forEach((key: string) => {// 注册为全局组件app.component(key, allGlobalComponent[key])})// 将 element-plus 的图标注册为全局组件for (const [key, component] of Object.entries(ElementPlusIconsVue)) {app.component(key, component)}},
}

main.ts中引入components

import globalComponent from './components/index'
const app = createApp(App)
app.use(globalComponent)
http://www.wangmingla.cn/news/63993.html

相关文章:

  • 宿豫区建设局网站优化关键词具体要怎么做
  • 做班级网站的素材河南网站推广公司
  • 沙井做网站软文广告经典案例800字
  • 开发大型网站的最主流语言中央新闻直播今天
  • 三网合一网站源码下载seo自学网官方
  • 茶叶手机网站个人免费域名注册网站
  • 做ppt会去什么网站找图seo网站外链平台
  • 网络营销的有形层武汉做seo
  • 企业网站设计原则河源网站seo
  • 中国企业信用网站官网佛山百度快速排名优化
  • 今天河北沧州确诊名单优化方案官方网站
  • 漯河建网站社群营销策略有哪些
  • 做网站的公司cnfgseo排名大概多少钱
  • 哪个网站可以做封面排名优化方案
  • 菠菜源码怎么做网站seo入门基础知识
  • 香港台湾人做攻略用什么网站产品网络营销策划
  • 网站推广销售腾讯会员被告怎么办开发一个网站的步骤流程
  • 做网站网站建设教程沈阳网站关键词优化多少钱
  • 域名访问网站是什么意思域名权重查询工具
  • 专门做图片的网站快速优化系统
  • 做兼职什么网站好专业网站优化培训
  • 重庆网站推广公司哪家好小红书seo排名
  • 大连旅游必去景点seo关键词排名优化推荐
  • 网站策划与维护排名优化方案
  • 地方政府如何建设政府网站百度推广计划
  • 成都做网站设计哪家最权威优化营商环境指什么
  • 做网站要用到数据库吗河北seo人员
  • 焦作做微信网站多少钱广西seo快速排名
  • php做调查问卷网站一个完整的营销策划方案范文
  • 做网站为何要续费使用最佳搜索引擎优化工具