002、Vue3 + Vite + TypeScript + Element-Plus,第一个后台管理项目走向第2步:整合一些配置

一、配置 alias 别名

先安装依赖,否则报错

pnpm install -D @types/node

vite.config.ts 增加 resolve 配置:

import { resolve } from "path";

import { UserConfig, ConfigEnv, loadEnv, defineConfig } from "vite";

export default ({ mode }: ConfigEnv): UserConfig => {

  const env = loadEnv(mode, process.cwd());

  return {

    resolve: {

      alias: {

        '@': resolve(__dirname, 'src'),

      },

    }

  }  

}

tsconfig.json 新增配置:
"compilerOptions": {
    ...
    "baseUrl": "./", // 解析非相对模块的基地址,默认是当前目录
    "paths": { // 路径映射,相对于baseUrl
        "@/*": ["src/*"] 
    }
}
 

路径别名使用 

// src/App.vue
import HelloWorld from './components/HelloWorld.vue'
                        ↓
import HelloWorld from '@/components/HelloWorld.vue'
 

 二、安装自动导入

为了避免在多个页面重复引入 API 或 组件,由此而产生的自动导入插件来节省重复代码和提高开发效率。Element Plus 官方文档中推荐 按需自动导入 的方式,而此需要使用额外的插件 unplugin-auto-import 和 unplugin-vue-components 来导入要使用的组件。所以在整合 Element Plus 之前先了解下自动导入的概念和作用,可以网上查阅

看看效果

插件名未使用自动导入使用自动导入
unplugin-auto-import
unplugin-vue-components

安装插件

pnpm install -D unplugin-auto-import unplugin-vue-components  

先建立个.eslintrc.cjs文件,空的

module.exports = {

}

vite.config.ts - 自动导入配置

新建 /src/types 目录用于存放自动导入函数和组件的TS类型声明文件

plugins: [

      AutoImport({

        // 自动导入 Vue 相关函数,如:ref, reactive, toRef 等

        imports: ["vue"],

        eslintrc: {

          enabled: true, // 是否自动生成 eslint 规则,建议生成之后设置 false

          filepath: "./.eslintrc-auto-import.json", // 指定自动导入函数 eslint 规则的文件

        },

        dts: resolve(pathSrc, "types", "auto-imports.d.ts"), // 指定自动导入函数TS类型声明文件路径

      }),

      Components({

        dts: resolve(pathSrc, "types", "components.d.ts"), // 指定自动导入组件TS类型声明文件路径

      }),

    ]

.eslintrc.cjs - 自动导入函数 eslint 规则引入

module.exports = {

    "extends": [

        "./.eslintrc-auto-import.json"

    ],

}

 tsconfig.json - 自动导入TS类型声明文件引入,就是前面建的目录

{
  "include": ["src/types/**/*.d.ts"]
}
 

 运行产生效果

 三、整合Element Plus

安装 Element Plus

pnpm install element-plus -S

安装自动导入 Icon 依赖 

pnpm install -D unplugin-icons

unplugin-icons是由知名开发者Anton Fu创建的一个轻量级、高效的图标解决方案。它通过扫描你的源代码,自动引入并优化你使用的图标,避免手动管理图标库带来的繁琐步骤。只需简单的配置,你就可以享受到按需加载、自动添加前缀和大小调整等强大特性。 

vite.config.ts 配置 (加粗为加入代码)

// vite.config.ts
import { ElementPlusResolver } from "unplugin-vue-components/resolvers";
import Icons from "unplugin-icons/vite";
import IconsResolver from "unplugin-icons/resolver"; 

plugins: [

      AutoImport({

        // 自动导入 Vue 相关函数,如:ref, reactive, toRef 等

        imports: ["vue"],

        eslintrc: {

          enabled: true, // 是否自动生成 eslint 规则,建议生成之后设置 false

          filepath: "./.eslintrc-auto-import.json", // 指定自动导入函数 eslint 规则的文件

        },

        resolvers: [

          // 自动导入 Element Plus 相关函数,如:ElMessage, ElMessageBox... (带样式)

          ElementPlusResolver(),

          // 自动导入图标组件

          IconsResolver({}),

        ],

        vueTemplate: true, // 是否在 vue 模板中自动导入

        dts: resolve(pathSrc, "types", "auto-imports.d.ts"), // 指定自动导入函数TS类型声明文件路径

       

      }),

      Components({

        resolvers: [

          // 自动导入 Element Plus 组件

          ElementPlusResolver(),

          // 自动注册图标组件

          IconsResolver({

            enabledCollections: ["ep"] // element-plus图标库

          }),

        ],

        dts: resolve(pathSrc, "types", "components.d.ts"), 

      }),

      Icons({

        // 自动安装图标库

        autoInstall: true,

      }),

    ]

示例代码 HelloWorld.vue最后面添加

<!-- src/components/HelloWorld.vue -->
<div>
  <el-button type="success"><i-ep-SuccessFilled />Success</el-button>
  <el-button type="info"><i-ep-InfoFilled />Info</el-button>
  <el-button type="warning"><i-ep-WarningFilled />Warning</el-button>
  <el-button type="danger"><i-ep-WarnTriangleFilled />Danger</el-button>
</div>

效果图

这里会出现一个错误/* unplugin-vue-components disabled */<script setup lang="ts">

需要在vite.config.ts加入,重新运行即可

 plugins: [

      vue(),

。。。。。

四、这篇就到此,后面继续整合

  • 14
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Vue3是一种流行的JavaScript框架,它被广泛用于构建现代化的Web应用程序。Vite4是Vue3的一种构建工具,它具有快速的冷启动时间和即时的热模块替换,使开发过程更加高效。Element Plus是一套基于Vue3的UI组件库,它提供了丰富的可定制化的组件,使得构建界面变得简单。 这款后台管理系统是使用Vue3、Vite4和Element Plus进行开发的。它提供了一个现代化的用户界面,适用于管理各种类型的后台数据。 由于使用了Vue3和Vite4,该后台管理系统具有卓越的性能和开发速度。Vue3的响应式数据绑定机制可以确保数据状态的变更能够自动同到界面上,使用户获得更流畅和高效的交互体验。Vite4的快速冷启动和即时热模块替换功能,可以大大提升开发过程中的效率,保证开发者可以实时看到代码改动的效果。 另外,使用Element Plus作为UI组件库,可以让开发者快速构建各种功能丰富的界面元素。Element Plus提供了大量的可用组件,如表格、表单、图表等,开发者可以根据需求轻松地快速搭建出美观且易用的后台管理系统。 这款后台管理系统还具备移动端适配能力,可以在手机等移动设备上正常访问和使用。通过Vue3的响应式设计和Element Plus的响应式布局,界面可以根据不同的屏幕大小和设备自动适应并呈现最佳的使用体验。 总而言之,这款使用Vue3、Vite4和Element Plus开发的后台管理系统具有出色的性能、灵活的开发工具、丰富的可定制化组件和良好的移动端适配能力,适合开发者快速构建现代化的后台管理系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值