/Mall

Vue移动商城项目,练习Vue时的demo。

Primary LanguageVue

Mall

练习Vue时写的移动端商城项目,目前已经部署到线上。

对应API服务

使用Python FastAPI构建

FastAPI服务地址: https://github.com/CoderCharm/MallAPI

项目进度

  • 完成首页,分类页,购物车等页面,还差个人中心(2020/06/30)

线上地址 https://www.charmcode.cn/app/mall/home

PC端, Google浏览器需要F12 点击切换移动设备

存在问题

这些问题,暂时先不解决,整体完成后在解决。

  • 1 内容滚动不自然。
  • 2 有时候,首次进入页面,不能滑动内容。(疑似没有重新计算内容高度)
  • 3 没有记录滚动高度,切换分类时,滚动高度没有初始化。(应该单独记录每个分类的滚动高度)
  • 4 没有Toast弹窗提示。(后续完善)
  • 5 详情页,部分样式不完善。(不完善了)
  • 6 由于数据问题,商品详情页goodsId只有 123, 456, 789三个可以传。
  • 7 swiper 获取元素失败报错问题。(使用vue-awesome-swiper替换)

部署到线上 (同一个域名,部署多个Vue静态文件服务)

地址 DEPLOYMENT.md 个人总结

Src文件目录


|____App.vue
|____config
| |____index.js               // 简单的自定义配置文件 比如请求的地址 生产和开发地址(ps:vue-cli会自动帮我们区分生产开发,npm run serve就是开发,build生产)
|____utils
| |____request.js             // 封装的 axios服务
| |____public.js
| |____url.js                 // 在这里读取区分 开发生产的根路径
|____main.js
|____components               // 全局组件
| |____content                // 只能本项目通用的全局组件
| | |____tabControl
| | | |____TabControl.vue
| | |____mainTabbar
| | | |____MainTabBar.vue
| | |____backTop
| | | |____BackTop.vue
| |____HelloWorld.vue
| |____common                 // 其他地方也能用的全局组件
| | |____navbar
| | | |____NavBar.vue
| | |____swiper
| | | |____Swiper.vue
| | | |____SwiperItem.vue
| | | |____index.js
| | |____scroll
| | | |____scroll.vue
| | |____tabbar
| | | |____TabBarItem.vue
| | | |____TabBar.vue
|____common                  
| |____mixin.js
|____api                      // 配合axios 区分的各模块路由
| |____index.js
| |____home.js
| |____category.js
| |____detail.js
|____views                   // 各模块页面
| |____demo
| | |____Demo.vue
| | |____childComps
| |____home
| | |____Home.vue
| | |____childComps
| | | |____FeatureView.vue
| | | |____HomeSwiper.vue
| | | |____GoodListItem.vue
| | | |____RecommendView.vue
| | | |____GoodsLIst.vue
| |____category
| | |____Category.vue
| | |____childComps
| | | |____LeftBar.vue
| | | |____GoodListItem.vue
| | | |____GoodsLIst.vue
| | | |____TabBar.vue
| |____shopcart
| | |____childComps
| | | |____DelBottomBar.vue
| | | |____ShopListItem.vue
| | | |____SettleBottomBar.vue
| | |____ShopCart.vue
| |____detail
| | |____Detail.vue
| | |____childComps
| | | |____DetailSwiper.vue
| | | |____GoodsDisplay.vue
| | | |____GoodsStyleInfo.vue
| | | |____LogisticsInfo.vue
| | | |____DiscountInfo.vue
| | | |____BottomBar.vue
| | | |____CommentInfo.vue
| | | |____BaseInfo.vue
| | | |____SaleInfo.vue
| | | |____ShopInfo.vue
| | | |____DetailTabBar.vue
| |____profile
| | |____Profile.vue
|____assets
| |____css
| | |____reset.less
| | |____normalize.css
| | |____base.css
| |____img
| | |____tabbar
| | | |____home.svg
| | | |____profile_active.svg
| | | |____home_active.svg
| | | |____category.svg
| | | |____category_active.svg
| | | |____shopcart.svg
| | | |____shopcart_active.svg
| | | |____profile.svg
| | |____common
| | | |____yes.svg
| | | |____shop.svg
| | | |____check.svg
| | | |____back.svg
| | | |____cust.svg
| | | |____top.svg
| | | |____heart.svg
| |____logo.png
|____store
| |____index.js
|____router                        // vue-router 本地路由文件
| |____index.js                    

Project setup

npm install

Compiles and hot-reloads for development

npm run serve

Compiles and minifies for production

npm run build

Run your tests

npm run test

Lints and fixes files

npm run lint

Customize configuration

See Configuration Reference.