# 初始化(创建项目)
前言
了解 vue 项目创建过程以及其目录结构,在开发中需要注意的地方,能够更好地规范前端开发
# 1.vue-cli 2.x
- 1.安装
vue-cli
npm install -g vue-cli
1
- 2.项目创建
vue init <template-name> <project-name>
npm i
npm run dev
1
2
3
2
3
使用旧版(2.X)创建
- 1.安装
@vue/cli-init
npm install -g @vue/cli-init
1
- 2.项目创建
vue init webpack projectname
npm run dev
1
2
2
# 2.vue-cli 3.x
- 1.安装
@vue/cli
node -v # Vue-cli3.0 需要在 Node.js 8.9 或更高版本
npm -v # 在安装 node 的时候,npm 包管理器会自动安装,通过查看 npm 版本来判断是否安装成功
npm i -g @vue/cli # 或者使用yarn安装 yarn install -g @vue/cli 全局安装 Vue-cli 3.0
1
2
3
2
3
- 2.创建项目
vue create vue3-demo
vue --version # 查询版本是否为3.x
yarn serve # 启动项目或者 npm run serve
1
2
3
2
3
# 2.1 项目结构
├── node_modules # 项目依赖包目录,存放下载依赖的文件夹
├── public # 存放不会变动静态的文件,它与src/assets的区别在于,public目录中的文件不被webpack打包处理,会原样拷贝到dist目录下
│ ├── favicon.ico # 在浏览器上显示的图标
│ └── index.html # 主页面文件
├── src # 源码文件夹
│ ├── assets # 存放组件中的静态资源
│ ├── components # 存放一些公共组件
│ ├── views # 存放所有的路由组件
│ ├── App.vue # 应用根主组件
│ ├── main.js # 应用入口 js
│ ├── router # 路由配置文件
│ └── store # vuex状态管理文件
├── .eslintrc.js # eslint相关配置
├── .gitignore # git 版本管制忽略的配置
├── .postcssrc.js # postcss一种对css编译的工具,类似babel对js的处理
├── babel.config.js # babel 的配置,即ES6语法编译配置
├── package.json # 项目基本信息,包依赖配置信息等
└── yarn.lock # 用于记录当前状态下实际安装的各个包的具体来源和版本号等, 保证其他人在 npm install 项目时大家的依赖能保证一致.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
- 开发规范
- 命名规范(文件命名,变量,函数,class, id) 驼峰, - _ 约定法
- 目录规范(目录如何建立) 划分目录结构 约定法
# 3.前端技术选型
# 3.1 在 vue 2.x 项目中
技术选型(简单项目)
工具选择 依赖包 说明 其他 是否必须 备注 脚手架 vue-cli3.x 创建项目用 ✅ 框架 Vue2.x 项目核心包 ✅ CSS 语言 scss + postcss scss 保持和 element plus 一致,postcss 提高兼容性 ❌ JS 编译 babel 将 es6 的语法编译成 es5 的语法 ✅ 提高兼容性 模块打包 webpack 全家桶 ✅ 路由 Vue-router 3.x ✅ 一般项目都会用到 数据流 Vuex 3.x ❌ 请求库 axios ✅ 一般项目中都要用这个 UI Element UI 推荐 ui 库 ✅ 技术选型(复杂项目)
工具选择 依赖包 说明 其他 是否必须 备注 JS 语言 TypeScript 支持静态类型检查 ❌ 单元测试 jest + moca 提高前端代码的健壮性 ❌ 一般在开发 ui 组件库的时候会用到 代码风格 eslint+prettier 可以强制开发人员用同一种规范开发 ❌ 不强制,但是建议统一代码风格 JS 压缩 TerserJS 提高生产环境性能 ✅ CSS 压缩 cssnano 提高生产环境性能 ✅ 国际化 i18n ❌ 需要用到国际化的项目推荐用这个实现 静态文档 - ❌ 微前端 qiankun ❌ 微前端项目推荐用这种方案 图表库 echarts ❌ 需要用到图表的项目推荐用这个
← 初始化(开发工具) 配置(package) →