Element Plus 的图标应用和Element UI的略有区别,须要独自装置。

在nuxt3中你可能并不能间接像Element Plus官网这样加载图标:

// main.ts// 如果您正在应用CDN引入,请删除上面一行。import * as ElementPlusIconsVue from '@element-plus/icons-vue'const app = createApp(App)for (const [key, component] of Object.entries(ElementPlusIconsVue)) {  app.component(key, component)}

nuxt3对vue app实例做了封装,咱们能够应用useNuxtApp这个组合式办法中获取到vue app:

<template>  <div>    <NuxtLayout :name="layout">      <NuxtPage />    </NuxtLayout>  </div></template><script setup>import * as ElementPlusIconsVue from '@element-plus/icons-vue'// You might choose this based on an API call or logged-in statusconst layout = "main-content";const nuxtApp = useNuxtApp()// console.log(nuxtApp)for (const [key, component] of Object.entries(ElementPlusIconsVue)) {  nuxtApp.vueApp.component(key, component)}</script>

这样就能够失常应用图标了:

<el-icon class="el-icon-close"><Close @click="handleClose"/></el-icon>