当前位置: 首页 > 编程笔记 >

VUE搭建手机商城心得和遇到的坑

谭志用
2023-03-14
本文向大家介绍VUE搭建手机商城心得和遇到的坑,包括了VUE搭建手机商城心得和遇到的坑的使用技巧和注意事项,需要的朋友参考一下

从github上看了一下第一次提交时间是2018年10月22号。到现在将近4个月时间,总算是一点一滴的自己一个人完成了这个使用vue做的商城项目。以前看到别人做的这种项目就很羡慕,想着自己也做一个,曾经的憧憬如今总算实现了。一路做过来踩了不少坑,这篇文章就是分享我遇到的这些坑,希望前人爬坑,后人避免。

项目访问地址xuyuechao.top

vue单页模式需要注意的坑

1.class样式冲突问题

由于是单页面应用。你在每个组件里面写入的样式最终都会作用到全局里面去,导致样式冲突问题。而每个组件都必须提供一个包裹性质的元素,建议这个元素设置一个单独的class用于包裹里面的其他class从而避免样式冲突

2.静态资源俩种处理方式需要理解到位

这个在Vue官方文档上有详细的说明,但是我一开始没有理解到位。走了一些个弯路。这里对Vue官方的内容提炼一个重点:
1.public中的内容必须用绝对路径引入也就是以'/'开头。否则将会被认为是一个模块引用会被webpack处理。注意:项目如果不是放在根域名下需要如下处理:

<template>
  <img src=`${publicPath}MrXu.jpg`>
</template>
<script>
export default {
  data() {
    return {
      publicPath: process.env.BASE_URL
    }
  }  
}
</script>

2.采用相对路径引入,方式多样,如:

1.<img src='@/MrXu.jpg'>
2.<img src='~MrXu.jpg'>
3.<img src='./MrXu.jpg'>

第一种方式用到的@代表的是别名的值

第二种方式用到的~其后的任何内容都会作为模块请求被解析。官方说可以引用Node模块中的资源,这个我还没用过。等以后用过了有更深的见解会再来补充

第三种方式就是标准的相对路径引入方式

注意千万不要用下面这种相对路径引入方式,因为他不会被webpack处理。而是直接采用的相对路径寻找文件。而当下的目录是会被处理的。这种方式一用一个错

<img src='MrXu.jpg'>

我的建议是尽可能采用相对路径引入。减少@的使用。因为我经过测试发现css和js文件是不支持@的使用的。

项目中对vue属性的巧妙运用

1.使用computed监听购物车内容的修改

购物车算是整个项目中比较复杂的地方之一了,删除,添加,选中,取消选中。这些个操作都会对总金额的计算产生影响,所以我用computed监听这些变化完成了总金额的计算以及全选按钮的变化

computed: {
  totalPrice() {
   var total = 0;
   this.shops.map(value => {
    if (value.check) total += value.num * value.price;
   });
   return total;
  },
  isAllCheck() {
   var newLength = this.shops.filter(value => {
    return value.check;
   }).length;

   return newLength === this.shops.length ? true : false;
  }
 }

2.使用filter完成了对订单状态的显示

项目中订单的状态多大7种,刚开始在html里面使用了三目运算符做的判断显示,显示效果极差,而且维护困难。但是采用filter不仅漂亮的多,后期的维护以及扩展都一幕了然

filters: {
  statusToText(value) {
   let reValue;
   switch (value) {
    case 1:
     reValue = "代付款";
     break;
    case 2:
     reValue = "代发货";
     break;
    case 3:
     reValue = "待收货";
     break;
    case 4:
     reValue = "已完成";
     break;
    case 5:
     reValue = "已取消";
     break;
    case 6:
     reValue = "售后处理";
     break;
   }
   return reValue;
  }
 }

感言

做完这个项目收获真的蛮颇多的,像route的母子路由,路由懒加载,别名设置,路由拦截,vuex中actions,mutations,state的区别,vue的生命周期,父子组件传值,watch,computed等等。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持小牛知识库。

 类似资料:
  • 本文向大家介绍从0搭建vue-cli4脚手架,包括了从0搭建vue-cli4脚手架的使用技巧和注意事项,需要的朋友参考一下 之前写了两期前后端分离的SpringBoot项目,从0搭建到整合Mybatis,但是只有后端没有前端的项目是不完整的,所以今天更新一篇从0搭建vue-cli4脚手架。 准备工作,有点类似java的jdk 安装node.js 直接去官网下载就可以https://nodejs.o

  • 本文向大家介绍使用PHPCMS搭建wap手机网站,包括了使用PHPCMS搭建wap手机网站的使用技巧和注意事项,需要的朋友参考一下 下面给大家讲使用PHPCMS搭建wap手机网站的方法,具体内容请看下文。 首先在phpcms/libs/functions/extention.func.php里面写入判断手机访问的自定义函数 然后在phpcms/templates/default模版文件夹里建立一个

  • 本文向大家介绍vue-cli3.0 脚手架搭建项目的过程详解,包括了vue-cli3.0 脚手架搭建项目的过程详解的使用技巧和注意事项,需要的朋友参考一下 1.安装vue-cli 3.0 安装成功后查看版本:vue -V(大写的V) 2.命令变化 用法:create [options] <app-name> 创建一个由 `vue-cli-service` 提供支持的新项目 选项:   -p, --

  • 商城配置上线 1 接口配置 登录到兑吧后台【基础配置】→【接口配置】把 免登陆接口 ,积分消耗,结果通知配置好,若对接了虚拟商品功能,把虚拟商品充值也配置好。接口配置好后,可用后面的测试按钮做仿真请求对接口进行测试。如图: 2.申请开通权限(重要!) 测试流程走通后,进入正式环境需要开通权限,开通权限请联系兑吧商务/运营专员。

  • DokuWiki 是一个针对小公司文件需求而開發的 Wiki引擎。DokuWiki是用程序设计语言PHP开发的并以GPL 2发布。DokuWiki基于文本存储,所以不需要数据库,其数据文件在Wiki系统外也是可读的。DokuWiki的功能齐全,支持UTF-8,最新版支持中文链接。能够单独编辑页面中的某个章节,能够自动生成目录,适合中小企业、个人使用,用作资料归档、指南、读书笔记等。DokuWiki

  • 本文向大家介绍搭建Vue从Vue-cli到router路由护卫的实现,包括了搭建Vue从Vue-cli到router路由护卫的实现的使用技巧和注意事项,需要的朋友参考一下 别的不多说,开始动爪把, 首先安装vue-cli  mac: sudo npm install -g @vue/cli github: https://github.com/XinYueXiao/vue-routes 1、Vue