vue项目开发基本目录结构
§ 目录结构
.
├── build/ # Webpack 配置目录
├── dist/ # build 生成的生产环境下的项目
├── src/ # 源码目录(开发都在这里进行)
│ ├── assets/ # 放置需要经由 Webpack 处理的静态文件
│ ├── components/ # 组件
│ ├── filters/ # 过滤器
│ ├── store/ # 状态管理
│ ├── routes/ # 路由
│ ├── services/ # 服务(统一管理 XHR 请求)
│ ├── utils/ # 工具类
│ ├── views/ # 路由页面组件
│ ├── app.js # 启动文件
│ ├── index.html # 静态基页
├── static/ # 放置无需经由 Webpack 处理的静态文件
├── .babelrc # Babel 转码配置
├── .eslintignore # (配置)ESLint 检查中需忽略的文件(夹)
├── .eslintrc # ESLint 配置
├── .gitignore # (配置)需被 Git 忽略的文件(夹)
├── package.json # (这个就不用多解释了吧)
├── package-lock.json # (以记录当前状态下实际安装的各个npm package的具体来源和版本号)
您可以根据业务需求改动目录结构
上述目录结构中,需要注意的是 src/components/ 与 src/views/ 的区别
src/components/ # 组件
├── App.vue # 根组件
├── Breadcrumb.vue # 面包屑
├── Navbar.vue # 顶部导航栏
├── Pagination.vue # 分页
├── Select/ # 下拉框选择框组件
│ ├── LimitSelect.vue # “每页显示多少条记录” 下拉选择框
│ └── Select2.vue # 对 Select2 的封装
└── Sidebar/ # 侧边栏组件
├── index.vue # 侧边栏
└── Link.vue # 导航链接封装
src/views/ # 路由页面组件
├── index.vue # 首页
├── auth/ # 用户认证模块
│ ├── login.vue # 登录页
│ └── logout.vue # 注销登录页
└── msg/ # 留言板模块
├── index.vue # 对应 /msg(留言板首页,alias => /msg/list)
├── list.vue # 对应 /msg/list(留言板列表)
├── add.vue # 对应 /msg/add(新增留言)
├── detail.vue # 对应 /msg/detail/:msgId(查看留言)
├── update.vue # 对应 /msg/update/:msgId(修改留言)
├── _components/ # 留言板模块共用组件
│ ├── AuthorSelect.vue # 留言发布者选择下拉框
│ ├── MsgForm.vue # 留言表单
│ └── OptBtnGroup.vue # 留言操作按钮组
└── _mixins/ # 留言板模块共用 mixins
└── autoLoadByParams.js # 根据 $route.params.msgId 自动加载
根据注释,我们大概知道了二者的差别:
src/components/
- 主要是全局性的,或通用性很强的组件,具备良好的封装性
- 一般不会涉及到具体的业务逻辑
src/views/
- 主要是业务性的页面组件,基本不具备通用性
- 基本与路由一一对应(例如
/src/views/auth/login.vue对应着路由/auth/login) - 各功能模块(如
msg/)内部可分离出通用部分(如_components/、_mixins/)
若多个功能模块通用的,则建议移到全局,即
src/components/、src/mixins/等
vue项目开发基本目录结构的更多相关文章
- spring boot 项目开发常用目录结构
在spring boot开发中一些常用的目录划分 转载自https://blog.csdn.net/Auntvt/article/details/80381756: 一.代码层结构 根目录:net.c ...
- YII框架开发一个项目的通用目录结构
YII框架开发一个项目的通用目录结构: 3 testdrive/ 4 index.php Web 应用入口脚本文件 5 assets/ 包含公开的资源文件 6 css/ 包含 CSS 文件 7 ima ...
- Vue项目开发相关问题总结
Vue项目开发相关问题总结 一.创建一个项目(两种方式) 1.通过CLI命令行创建,具体步骤如下: (1)Node 版本要求 Vue CLI 需要 Node.js 8.9 或更高版本 (推荐 8.11 ...
- Vue项目开发最新、最全代码规范文档
Vue项目开发最新.最全代码规范文档 2019年02月21日 10:43:49 yw00yw 阅读数 337 一. 目录结构 |— build 构建脚本目录 |— build.js 生产环境构建( ...
- Vue 项目开发
目录 Vue 项目开发 项目目录结构解析 入口文件 main.js (项目入口) 根组件 app.vue index.html 文件入口 router 路由 components 子组件 项目初始化 ...
- maven 创建web项目的标准目录结构
maven 创建web项目的标准目录结构 CreateTime--2018年4月18日21:05:37 Author:Marydon 1.标准目录介绍(开发目录) 2.在eclipse下,目录展示 ...
- 一种模块化开发的目录结构和部署tips
开发环境 开发态目录结构类似: 然后用express的static,将上下文映射到static那级目录上,比如访问: http://ip:5000/employee/employeeList.html ...
- maven项目的标准目录结构
maven项目的标准目录结构如下:
- Vue项目开发目录结构
最近做一些CI+Vue开发的简单项目,由于刚开始一直从事后端,对Vue了解不是很多,fork了团队的项目代码发现项目的文件夹很多,一时间有些懵,上网上参考了部分资料,博客园中的放晴的天空与狮子爱吃草两 ...
随机推荐
- dubbo注册中心
官方推荐的是zookeeper注册中心. 1.Multicast 注册中心 Multicast 注册中心不需要启动任何中心节点,只要广播地址一样,就可以互相发现. 提供方启动时广播自己的地址消费方启动 ...
- HikariCP Druid比较
HikariCP Github地址: https://github.com/brettwooldridge/HikariCP HikariCP是数据库连接池,而且是号称史上最快的, SpringBoo ...
- c++消息队列的实现
#ifndef NET_FRAME_CONCURRENT_QUEUE_H #define NET_FRAME_CONCURRENT_QUEUE_H #include <queue> # ...
- 7个提升Python程序性能的好习惯
原文作者:爱coding,会编程的核电工程师. 个人博客地址:zhihu.com/people/zhong-yun-75-63 掌握一些技巧,可尽量提高Python程序性能,也可以避免不必要的资源浪费 ...
- XPath Helper使用教程
下载地址 百度网盘下载密码:yuuv下载完成后选择保留 安装 在导航栏中输入chrome://extensions:将.crx文件拖拽到扩展程序页面中,勾选已启用按钮. 使用 重启浏览器,快捷键CTR ...
- 【Python】Flask中@wraps的使用
先说总结,白话来讲,@wraps相当于是装饰器的装饰器. python内置的方法使用解释,看起很复杂的样子┓( ´∀` )┏ def wraps(wrapped, assigned = WRAPPER ...
- jsp参数乱码解决
iframe src引入jsp,?跟着的中文参数会乱码 解决方法: var CJJG=encodeURI(encodeURI(value.data.CJJG));//js里面转码一次 //jsp页面里 ...
- linux 磁盘io监控
我们在线上linux服务器排查问题时,一般会通过top.free.netstat.df -h等命令排查cpu.内存.网络和磁盘等问题.有的时候我们需要更进一步了解磁盘io的使用情况,那么本文就是重点讲 ...
- SQL语句原理解析(原创)
基本的sql语句很好理解这里不做分析,这里只考虑复杂的sql语法和关键词用法的实验分析: 一,join关联的作用: 作用: 1,为了生成信息信息更加全面的中间表:2,为了where可以使用含有单表外字 ...
- IntelliJ IDEA配置Maven