启动VUE项目环境搭建
拿到一个VUE项目在Windows下怎么跑起来解析项目结构和用途1、环境搭建本机装好 Node npm环境全局安装 vue-clinpm install -g vue/cli# 校验是否安装成功vue -V2、安装依赖包进入项目根目录安装所有依赖npm install3、启动项目进入项目文件夹启动运行npm run servenode-demo/├── index.js # 程序入口文件node index.js 启动├── package.json # 项目核心配置文件重中之重├── package-lock.json # npm自动生成锁定所有依赖精确版本统一团队环境├── node_modules/ # 所有安装的第三方依赖库npm i 生成禁止提交git├── .gitignore # git忽略文件node_modules、日志、打包产物、本地配置└── config.js # 自定义配置端口、地址、密钥等核心文件作用package.jsonname/version项目名、版本号scripts自定义命令你刚才改的serve/build就写在这里dependencies业务运行依赖线上打包必须携带vue、axios 都在这里devDependencies开发依赖仅本地打包、调试用webpack、vue-cli-service、loaderpackage-lock.json杜绝 “我本地能跑你电脑报错” 的版本不一致问题必须入库vue-cli-project/├── public/ # 静态原文件不会被webpack编译│ ├── index.html # 页面宿主模板webpack注入js、css│ └── favicon.ico # 网站图标├── src/ # 业务源码目录日常99%开发都在这里│ ├── main.js # 全局入口挂载Vue实例、注册全局组件/路由/axios│ ├── App.vue # 根组件│ ├── views/ # 页面级.vue文件路由对应页面│ ├── components/ # 公共复用小组件按钮、弹窗、表头│ ├── router/index.js # 路由配置页面地址映射、路由守卫│ ├── store/index.js # Vuex全局状态管理│ ├── api/ # 接口请求封装axios统一拦截、接口地址│ ├── assets/ # 图片、全局css、字体文件会被webpack打包压缩│ └── utils/ # 工具函数时间格式化、加密、正则、公共方法├── babel.config.js # JS语法降级配置把ES6转成浏览器兼容JS├── vue.config.js # 【Webpack核心配置】# 代理跨域、打包路径、端口、别名、关闭sourceMap、配置legacy兼容├── package.json # 启动命令、依赖管理你修改openssl环境变量的地方├── node_modules/├── .env / .env.development / .env.production # 环境变量文件│ dev环境地址、生产接口地址分开配置├── dist/ # npm run build 打包后的产物部署到服务器的文件└── .gitignorenode-server/├── src│ ├── app.js # 服务实例初始化中间件、跨域、日志、异常捕获│ ├── server.js # 入口监听端口启动服务│ ├── controller/ # 控制器接收请求、返回响应业务逻辑入口│ ├── service/ # 业务逻辑层数据库操作、复杂计算│ ├── model/ # 数据库模型Mysql/Mongo数据表映射│ ├── router/ # 路由接口路径绑定对应controller方法│ ├── middleware/ # 自定义中间件token校验、权限、参数校验│ ├── utils/ # 工具类│ ├── config/ # 数据库连接、环境配置│ └── logs/ # 运行日志├── package.json├── .env└── distts项目编译目录依赖解析node_modules/uuid: {version: 3.4.0, // 实际安装的精准版本resolved: 下载源地址,integrity: 文件哈希值, // 校验安装包有没有被篡改、下载残缺deprecated: 提示过时的文案, // 你控制台一堆黄色警告就取自这里dependencies: {} // 这个包自身又依赖了哪些包}