大森林电商项目逻辑

项目初始化

使用打包好的项目:npm run start
disc中下载npm i -g live-server 然后启动
时间格式化插件dayjs
element-ui 按需引入
1下载插件2配置.babelrc
Vue.use(Button)注意插件大写

项目结构
        封装axios
        路由拦截
        组件封装
            navbar
        views存放视图组件
        components存放公共组件
        api存放统一封装的接口
        router是路由
        store是状态管理器

首页

顶部栏-logo和搜索
        轮播是使用一个子组件,方便复用,封装轮播接口
        分类:使用了vant组件来完成的,请求数据进行渲染
        产品列表
优化部分 
                问题:监听滚动事件会频繁触发很多次,导致请求很多次重复
                解决:使用节流来优化
                    节流的原理是xxxx
                        Subtopic 1
               目的:开发功能的时候需要考虑性能的消耗,以及闭包的合理使用
            封装产品列表接口通过vant组件来实现
        首页里轮播、分类、产品列表是三个接口,我使用promise.all来一次请求三个接口

          使用原生js开发的下拉加载更多
                实现的原理:当前的视图高度+滚动条卷上去的高度=>滚动条(整个文档)的高度就说明到底了。

详情页

 返回导航栏:是全局封装的
        轮播
            也是封装的
        根据地址栏的产品id来加载详情页数据
        底部是客服,购物车,商铺,加入购物车和立即购买
        因为进入客服或购物车以及加入购物车都需要用户登录,所以我全局使用自定义指令来控制行为
客服
     
  使用socket.io实现的客服功能
购物车
     
  商品点击加入购物车时,如果没有登录会跳转到登录页面先进行登录,如果已经登录,点击加入购物车会将商品直接加入到购物车里面,重复点击同样的商品时,购物车里面的商品会依次加1。商品价格是通过computed计算属性和全选单选勾选状态来计算价格的,等等!
 订单管理
        vant组件来完成的,封装请求订单管理接口。未付款的商品付款了,商品会添加到已付款,未付款,页面里面等等。
   用户系统
        01.将账号密码通过数据传参与台login接口匹配验证通过
02.将得到的token值存储到vue中并作持久化,根据是否存有token值,判断是否有访问的权限
03.用路由守卫判断用户浏览该页面是否需要登录权限,没登录则跳转至登录页面
  搜索
        封装列表数据的接口,通过filte过滤来实现
   
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值