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

002 vue3-admin项目的目录及文件说明之src目录及其子目录、子文件

整体目录结构

src/
├── api/                 # API 接口相关
├── assets/              # 静态资源
├── components/          # 通用组件
├── composables/         # 组合式函数
├── constants/           # 常量定义
├── directives/          # 自定义指令
├── hooks/               # 自定义钩子
├── layout/              # 布局组件
├── router/              # 路由配置
├── services/            # 业务服务层
├── store/               # 状态管理
├── styles/              # 样式文件
├── types/               # TypeScript 类型定义
├── utils/               # 工具函数
├── views/               # 页面组件
├── App.vue              # 根组件
├── main.ts              # 入口文件
└── vite-env.d.ts        # Vite 环境类型声明

核心目录

1 api/ 目录

api/
├── user.ts              # 用户相关接口
├── product.ts           # 产品相关接口
└── index.ts             # API 统一导出
作用:集中管理所有 API 接口调用特点:
  • 按业务模块划分接口文件
  • 统一处理请求和响应拦截(拦截器interceptors:axios.create(config).interceptors.request.use 和 axios.create(config).interceptors.response.use)
  • 支持 TypeScript 类型定义

2 assets/ 目录

assets/
├── images/              # 图片资源
├── icons/               # 图标资源
├── fonts/               # 字体文件
└── styles/              # 全局样式

 

作用:存放项目中使用的静态资源特点:
  • 支持 Vite 静态资源处理
  • 可通过 import 直接引用
  • 支持自动优化和压缩

3 components/ 目录

components/
├── common/              # 通用基础组件
├── business/            # 业务组件
└── layout/              # 布局组件
作用:存放可复用的 Vue 组件特点:
  • 支持自动注册(通过 unplugin-vue-components)
  • 组件化开发提高复用性
  • 支持 TypeScript 类型检查

4 composables/ 目录

composables/
├── useCounter.ts        # 计数器逻辑
├── useApi.ts            # API 调用逻辑
└── useModal.ts          # 模态框逻辑
作用:存放组合式函数,实现逻辑复用特点:
  • 基于 Vue 3 Composition API
  • 逻辑关注点分离
  • 更好的类型推导

5 router/ 目录

router/
├── index.ts             # 路由配置入口
├── routes.ts            # 路由表定义
└── guards.ts            # 路由守卫

6 store/ 目录

store/
├── index.ts             # Pinia 实例创建
├── modules/             # 模块化状态
│   ├── user.ts          # 用户状态
│   └── app.ts           # 应用状态
作用:使用 Pinia 进行状态管理特点:
  • 模块化状态管理
  • 更好的 TypeScript 支持
  • 自动导入支持

7 views/ 目录

views/
├── Home.vue             # 首页
├── About.vue            # 关于页
└── user/                # 用户相关页面├── Login.vue        # 登录页└── Profile.vue      # 个人资料页
作用:存放页面级组件特点:
  • 与路由配置对应
  • 包含完整的页面结构
  • 可嵌套子组件

8 utils/ 目录

utils/
├── request.ts           # 网络请求封装
├── storage.ts           # 本地存储工具
└── format.ts            # 格式化工具
作用:提供通用工具函数特点:
  • 功能单一,职责明确
  • 可被多个组件复用
  • 纯函数设计

核心文件

1 main.ts

import { createApp } from 'vue'
import { createPinia } from 'pinia'
import ElementPlus from 'element-plus'
import 'element-plus/dist/index.css'
import App from './App.vue'
import router from './router'
import './style.css'const app = createApp(App)app.use(createPinia())
app.use(router)
app.use(ElementPlus)app.mount('#app')

 

作用:应用入口文件,初始化 Vue 应用主要功能:
  • 创建 Vue 应用实例
  • 注册 Pinia 状态管理
  • 注册 Vue Router
  • 注册 Element Plus
  • 挂载应用

2 App.vue

<template><el-config-provider :locale="zhCn"><router-view /></el-config-provider>
</template><script setup lang="ts">
import { zhCn } from 'element-plus/dist/locale/zh-cn.mjs'
</script><style scoped>
/* 全局样式 */
</style>
作用:根组件,应用的入口组件特点:
  • 配置 Element Plus 国际化
  • 提供路由视图容器
  • 可设置全局样式

3 vite-env.d.ts

/// <reference types="vite/client" />declare module '*.vue' {import type { DefineComponent } from 'vue'const component: DefineComponent<{}, {}, any>export default component
}
作用:Vite 环境的 TypeScript 类型声明特点:
  • 提供 Vite 客户端类型
  • 声明 Vue 单文件组件类型
  • 支持 TypeScript 类型检查

 

http://www.jsqmd.com/news/41969/

相关文章:

  • 全国性搬家公司推荐榜:从运费优势、专业度、靠谱口碑、费用便宜划算等综合实力排名
  • C# 高级类型 Dictionary(学习笔记4)
  • Java 垃圾收集机制
  • Metasploit Framework 6.4.99 (macOS, Linux, Windows) - 开源渗透测试框架
  • 小程序获取OCR识别结果,示例代码
  • 20232405 2024-2025-1 《网络与系统攻防技术》实验五实验报告
  • Invicti v25.11 发布,新增功能简介
  • Acunetix v25.11 发布,新增功能简介
  • 【运维自动化-标准运维】变量的高级用法
  • MySQL数据过滤与计算字段实战技术指南
  • 2025-11-14 PQ v.Next日志记录
  • 详细介绍:K8s 安全机制全解析
  • 详细介绍:MySQL索引指南
  • 实用指南:【第五章:计算机视觉-项目实战之推荐/广告系统】1.推荐系统基础与召回算法-(6)召回算法之u2i: FM、deepFM、召回双塔原理精讲与实战
  • 微前端架构演进:决策、实践与协同
  • OI 技术动作 注意事项集合
  • Java 设计模式—— 责任链模式:从原理到 SpringBoot 最优搭建
  • 大模型基础补全计划(七)---Transformer(多头注意力、自注意力、位置编码)及实例与测试
  • 京东商品详情接口终极突破:从多接口联动解析到数据全息重构
  • 实用指南:On-Page SEO完全指南:从关键词策略到内容优化
  • 2025年品质卓越的羊毛地毯品牌综合推荐与选购指南
  • dfad
  • 2025年品质卓越的羊毛地毯工厂综合推荐与选择指南
  • 20232415 2025-2026-1 《网络与系统攻防技术》 实验五实验报告
  • CSP2025反思——于诗涵
  • 接雨水算法全解析:从错误到3种最优解法(含扩展与思路Trigger)
  • 详细介绍:Android APK签名机制的工作原理、结构差异、安全局限与优势
  • Java位运算符概览
  • C#性能优化基础:高CPU使用率(trace)
  • 详细介绍:Linux Bash(一)