# :mortar_board: 美团外卖APP
<!-- > 项目几年没有维护了,可能运行不起来,如遇问题请联系我(微信号:bxm_0927)。 -->
👉 ~~项目演示地址:http://39.108.232.27:9000~~
基于 **Vue 全家桶 (2.x)** 制作的美团外卖APP ,一个媲美原生的移动端外卖 App,项目完整、功能完备、UI美观、交互一流。
![](https://user-gold-cdn.xitu.io/2017/9/13/c1224c32dac011d44ec4b024118608f1)
## :book: 技术栈
【前端】
- **Vue**:构建用户界面的 MVVM 框架,核心是响应的数据绑定和组系统件
- **vue-router**:为单页面应用提供的路由系统,项目上线前使用了路由懒加载技术,来异步加载路由优化性能
- **vuex**:Vue 集中状态管理,在多个组件共享某些状态时非常便捷
- **vue-resource**:服务端通讯,项目后期改用 `axios`
- **axios**:服务端通讯。基于 `Promise` 的网络请求插件
- **vue-lazyload**:第三方图片懒加载库,优化页面加载速度
- **better-scroll**:iscroll 的优化版,使移动端滑动体验更加流畅
- **Mint UI**:一套基于 Vue 2.0 的移动端组件库,出自饿了么前端
- **Sass(Scss)**:css 预编译处理器
- **ES6**:ECMAScript 新一代语法,模块化、解构赋值、Promise、Class 等方法非常好用
- **Moment.js**:日期时间格式化插件
【后端】
- **Node.js**:利用 Express 起一个本地测试服务器
- **Express**:一个自身功能极简,完全是由路由和中间件构成一个的WEB开发框架
【自动化构建及其他工具】
- **vue-cli**:Vue 脚手架工具,快速初始化项目代码
- **ESLint**:代码风格检查工具,规范代码书写
- **pm2**:一个带有负载均衡功能的Node应用的进程管理器,此项目用于在阿里云服务器启动服务
## :closed_book: 收获
1. 对 vue 的组件、指令、选项、模版渲染、事件绑定、计算属性等有了一定了解
2. 了解了 vue 组件之间的交互、传值
3. 熟悉了在 vue 项目中使用第三方插件(组件)
4. 熟悉了组件化、模块化的开发思维
5. 熟悉了 vue-router 控制路由和子路由的方式
6. 再次熟悉项目开发流程:项目分析设计 -> 项目环境搭建 -> 依赖安装 -> 页面架构设计 -> 组件开发 -> 测试联调 -> 发布上线
1. 总结了一套 Vue 通用组件,可以在其它项目中复用的 10+ 个基础组件、15+ 个业务组件
2. 总结了一套常用的 SCSS mixin 库
3. 总结了一套常用的 JS 工具函数库
4. 体会到组件化、模块化开发带来的便捷
5. 体会到将对象封装成类(ES6 class) 的便捷性,以及利用工厂方式初始化类实例
6. 学会利用过渡效果及动画效果制作良好的用户交互体验
## :pencil: 实现细节
主要功能:首页、商家模块、发现、订单、我的
### 首页
首页数据 mock 美团移动端数据 - [接口](http://i.waimai.meituan.com)
### 商家模块
该页面主要实现了点餐、商品评价、商家信息预览等功能,内置购物车
数据通过 `axios` 异步请求获取,前期使用 mock 数据,后期抓取xx数据
公告浮层中使用了移动端经典的 `CSS-Sticky-Footer` 布局:关闭按钮被挤下去
公告浮层设计了淡入淡出效果,并使用了针对 IOS 用户的渐进增强效果: `backdrop-filter`
导航栏解决移动端1像素边框问题,并设计了通用 mixin
下面三个部分使用嵌套子路由实现:
**点餐**:
- 布局上采用嵌套 Flex 布局。
- 滚动效果借助 `better-scroll` 滚动插件实现。
- 实现了左右菜单联动效果:右侧滚动,左侧对应菜单高亮,左侧点击,右侧滚动到对应区域。
- 设计了迷你购物车组件
- 利用 css 过度动画实现了购物车加减动态效果
- 利用 js 钩子实现了加入购物车飞行小球效果
**评价**:
- 复用 `star`、`cross-line`、`ratings-select` 等组件,体会到组件化开发的便捷性
**商家**:
- 借助 `better-scroll` 实现了横向滚动和纵向滚动效果
- 收藏功能使用 `localstorage` 本地存储,并设计了通用 store 方案
## :pushpin: TODO
1. 做一个node服务端,配合mongodb,实现商品的上下架、用户的登录注册等功能
2. 丰富各个模块的深度
## :package: Build Setup
``` bash
# clone the repo into your disk.
$ git clone https://github.com/bxm0927/vue-meituan.git
# install dependencies
$ npm install
# serve with hot reload at localhost:8080
$ npm run dev
# build for production with minification
$ npm run build
```
## :four_leaf_clover: License
The code is available under the [MIT license](https://opensource.org/licenses/MIT).
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
美团外卖APP项目演示地址http://39.108.232.27:9000基于Vue全家桶(2.x)制作的美团外卖APP,一个相当美的移动端外卖App,项目完整、功能预览、UI美观、交互一流。 技术栈【摘要】Vue构建用户界面的MVVM框架,核心是响应的数据绑定和组系统件vue-router为单页面应用提供的路由系统,项目上线之前使用了路由懒加载技术,来异步加载路由优化性能vuexVue 集中状态管理,在多个组件共享状态某些时候非常方便vue-resource服务端通讯,项目升级改用axiosaxios服务端通讯。基于Promise的网络请求插件vue-lazyload第三方图片懒加载库,优化页面加载速度better-scrolliscroll 的优化版,使移动端滑动体验更顺畅Mint UI一套基于 Vue 2.0 的移动端库组件,出自饿了么前端Sass(Scss)css预编译处理器ES6ECMAScript新一代语法,修饰、解构赋值、Promise、Class等方法非常好用Moment.js日期时间删除插件【摘要】Node.js利用
资源推荐
资源详情
资源评论
收起资源包目录
基于Vue全家桶(2.x)制作的美团外卖APP.zip (222个子文件)
.babelrc 312B
demo.css 6KB
iconfont.css 5KB
iconfont.css 5KB
demo.css 2KB
style.css 1KB
.editorconfig 147B
iconfont.eot 4KB
iconfont.eot 4KB
icomoon.eot 2KB
icomoon.eot 2KB
.eslintignore 23B
.eslintrc 95B
.gitignore 200B
.gitkeep 0B
demo.html 9KB
demo_symbol.html 6KB
demo_unicode.html 5KB
demo_fontclass.html 4KB
index.html 444B
logo.jpeg 7KB
lazyload.jpeg 7KB
logo.jpeg 7KB
logo.jpeg 7KB
logo.jpeg 7KB
business3.jpeg 2KB
business2.jpeg 2KB
05518cc1080c38e96c9760508bf3a3a236825.jpeg 2KB
business1.jpeg 1KB
1.jpg 857KB
3.jpg 51KB
bannertemp.e8a6fa63.jpg 21KB
c4f01f9f5b3fc408d41c5619827dd922106908.jpg 3KB
6c74306ffb98d77675fbadeec60782ba46993.jpg 2KB
411142b4603dabb3084fe88ca6b2640418143.jpg 2KB
d9862a661a5f36289e7698ff80fe362740336.jpg 2KB
4ccb4c65d36a3cbaaf427f3cf6bc404a27483.jpg 2KB
utils.js 25KB
iconfont.js 17KB
actions.js 5KB
webpack.prod.conf.js 4KB
dev-server.js 4KB
index.js 3KB
utils.js 2KB
webpack.base.conf.js 2KB
prod.server.js 2KB
index.js 1KB
check-versions.js 1KB
webpack.dev.conf.js 1KB
runner.js 1KB
build.js 1KB
mutations.js 1KB
nightwatch.conf.js 1KB
demo.js 996B
karma.conf.js 992B
main.js 969B
state.js 885B
webpack.test.conf.js 830B
store.js 803B
elementCount.js 777B
getters.js 776B
.eslintrc.js 626B
mutations-type.js 598B
jsonp.js 569B
test.js 561B
index.js 542B
seller.js 490B
index.js 487B
vue-loader.conf.js 413B
Hello.spec.js 335B
dev-client.js 245B
.postcssrc.js 197B
dev.env.js 139B
test.env.js 132B
prod.env.js 48B
.jshintrc 721B
restaurant-list.json 62KB
index-list.json 58KB
seller.json 47KB
find-list.json 16KB
selection.json 7KB
package.json 3KB
README.md 5KB
2.png 607KB
find1.png 7KB
find.png 7KB
tab-icons.png 7KB
logo.png 7KB
logo.png 7KB
logo.png 7KB
logo.png 7KB
brand@3x.png 5KB
brand@3x.png 5KB
bulletin@3x.png 4KB
bulletin@3x.png 4KB
invoice_2@3x.png 4KB
invoice_2@3x.png 4KB
special_2@3x.png 3KB
special_2@3x.png 3KB
guarantee_2@3x.png 3KB
共 222 条
- 1
- 2
- 3
资源评论
徐浪老师
- 粉丝: 8250
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 【java毕业设计】校园资产管理源码(springboot+vue+mysql+说明文档+LW).zip
- 【java毕业设计】人事管理系统源码(springboot+vue+mysql+说明文档+LW).zip
- 问题- pip install pyqt6-tool失败.pdf
- 【java毕业设计】老年一站式服务平台源码(springboot+vue+mysql+说明文档).zip
- 【java毕业设计】科研项目验收管理系统源码(springboot+vue+mysql+说明文档+LW).zip
- java电商书城系统源码带本地搭建教程数据库 MySQL源码类型 WebForm
- 小熊派读取浊度、TDS、PH值和温湿度传感器的数据
- 【java毕业设计】智慧生活商城系统设计与实现源码(springboot+vue+mysql+说明文档+LW).zip
- 基于RBAC模型的权限控制的一整套基础开发平台,前后端分离,后端采用 django+django-rest-framework,前端采用 vue+ElementUI
- 扰动观测器(时域)-Matlab/Simulink开发
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功