vue后台管理系统——商品管理模块浮华夕颜

电商后台管理系统的功能——商品管理模块

商品管理概述

商品管理模块用于维护电商平台的商品信息,包括商品的类型、参数、图片、详情等信息。通过商品管理模块可以实现商品的添加、修改、展示和删除等功能。

1.商品列表

在goods文件夹下创建List.vue组件

1.1商品列表功能

在main.js入口文件中创建一个全局过滤器:所有的组件都可以使用

1.2添加商品

点击添加商品按钮跳转到添加商品的页面

①基本布局与分布条效果

需要使用step步骤条组件

②商品信息选项卡Tab布局效果

Tab组件的基本使用

实现步骤条与tab栏标签的数据联动:对于步骤条来说,如果想要修改激活项的话,必须找到步骤条的active属性,修改索引值;对于tab栏标签,有一个v-model属性,表示当前激活的面板,如果点击的是第一个标签栏,则将第一个面板的name属性值赋值给v-model。因此,只需要将tab标签栏的v-model属性绑定的值与步骤条的active属性绑定同样的值,就可以实现数据联动。

tab栏绑定的值是字符串类型的,但是步骤条中的active属性绑定的是数值类型的,因此需要做一个转换,将activeIndex转成数值类型:

如果要将一个长得像数字一样的字符串转换为数值类型,只需要-0即可。

阻止标签页之间的切换:首先要监听标签页的切换事件,在事件处理函数中判断是否处于第一个页签,还要判断选中的商品分类是否为三级分类。实际上就是判断数组长度是否为3,如果不等于3,则阻止跳转

③商品基本信息

我们将一个商品信息拆分成了五个panel面板,每个面板里面只维护着当前商品的部分数据,只有将所有面板的数据合并起来才是一个完整的商品数据,因此应该在五个panel面板的外面嵌套一层form表单。

addFormRules:{goods_name:[{required:true,message:'请填写商品名称',trigger:'blur'}],goods_price:[{required:true,message:'请填写商品价格',trigger:'blur'}],goods_weight:[{required:true,message:'请填写商品重量',trigger:'blur'}],goods_number:[{required:true,message:'请填写商品数量',trigger:'blur'}],goods_cat:[{required:true,message:'请选择商品分类',trigger:'blur'}]}使标签与文本框不在同一行:

④商品分类信息

⑤商品动态参数

使用到复选框组件:

⑥商品静态属性

⑦商品图片上传

图片上传upload组件基本使用

解决方法如下:

图片预览

实现图片的预览效果:图片预览实际上就是弹出一个对话框,只不过没有取消和确定按钮而已。

图片删除

完成图片上传

⑧商品详情

富文本编辑器基本使用

//安装vue-quill-editornpminstallvue-quill-editor-S或者使用vueui图形化界面安装:

⑨完成商品添加

上面的一行代码执行后会报错,这是因为在基本信息面板中的级联选择器必须双向绑定要一个数组上,但是在提交商品信息时,执行add()函数后,就将goods_cat转换为了字符串,这样就会报错

如何解决呢?可以在拼接操作goods_cat之前将addForm对象做一下深拷贝(将这个对象原封不动的拷贝一份出来,两个对象之间互不相干)

有两个bug还未解决:

①当不选择商品价格、商品重量和商品数量时,后台服务器会报错,显示必须输入这些值,但实际上这些属性是有一个默认值的0,为什么会显示为空数据呢?

②添加商品名称不能一致,但是删除了该商品之后,再添加一个与删除商品名称一致的商品却不行,这是为什么呢?后台数据库中没有删数据吗?知道原因了,sp_goods_pics这个表中已经删除该商品,但是在sp_goods表中却仍然保留着该商品的id值,是后台数据接口的问题。

1.3提交商品列表功能到码云

本地goods_list的代码就是最新的了

使用gitpush-uorigingoods_list命令把本地的goods_list分支推送到云端中

master是主分支,但是它的代码还是旧的,应该立即把所有的代码合并到主分支上

2.分类管理

在components目录下创建goods文件夹,然后创建cate.vue组件

2.1商品分类概述

商品分类用于在购物时,快速找到所要购买的商品,可以通过电商平台主页直观的看到。

2.2商品分类列表

基本布局与数据获取

将商品分类的数据渲染为树形表格,但elementUI中并没有提供这样的组件,我们需要依赖第三方的插件来实现树形的table表格:

①第三方树形表格的基本使用

npmivue-table-with-tree-grid-S或者使用vueui图形化界面来安装依赖包:

我们使用手动注册的方式:在main.js入口文件中导入,ZkTable是要注册的插件,ZkTable.name是注册的名称

②实现分类树形列表

data属性是树形表格的数据源,column是每列的信息,是个数组

隐藏掉树形表格前面的复选框和展开行的效果

需要在前面加一个索引列:

自定义索引列的标题:

设置表格列与列之间的边框:

实现'是否有效'这一列:需要用到作用域插槽

先将这一列用type指定为template,再使用template属性来指定具体的作用域插槽。在表格的中间用一个template来定义这个插槽,然后使用scope属性取个名字来与column中的template名称对应,并且通过slot-scope属性来接收这一行的数据

2.4分页功能

2.5添加分类

①实现分类树形列表

实现添加分类按钮的功能:

父级分类是没有验证规则的,如果为空,则是将当前的分类名称添加为一级分类,如果选择了一个(大家电),则是二级分类(大家电的子分类),如果选择了两个,则是三级分类。只需要获取前两级的分类,即请求的type设为2,不需要pagenum和pagesize,一次性的将前两级分类获取过来

②实现分类级联菜单效果

级联选择器Cascader::options指的是级联选择器的数据源,props属性是级联选择器的配置选项,你选中的值、展示的值、以及通过哪个属性来实现父子嵌套都要通过props预先进行配置

③控制父级分类的选择

父级分类选择时,获取对应的分类id。

handleChange(){if(this.selectedCateList.length===0){//证明没有选中任何父级分类this.addForm.cat_pid=0this.addForm.cat_level=0}else{//选中父级分类this.addForm.cat_pid=this.selectedCateList[this.selectedCateList.length-1]//设置分类等级this.addForm.cat_level=this.selectedCateList.length}}④完成分类添加

将分类名称、分类等级和父分类id提交到后台,完成分类添加。

2.6提交分类管理功能到码云

本地goods_cate的代码就是最新的了

使用gitpush-uorigingoods_cate命令把本地的goods_cate分支推送到云端中

3.参数管理

在goods文件夹下创建Params.vue组件

3.1参数管理概述

商品参数用于显示商品的固定的特征信息,可以通过电商平台商品详情页面直观的看到。

动态参数:

静态属性:

3.2商品分类选择

①选择商品分类

级联选择器默认只能选择选择框的最后一项,但是我们只允许选择三级分类,如果只有二级分类的选项,其实是可以选中二级分类的。那如何解决呢?

我们只需要监听选择器的change事件,在change事件中只需要判断选中项的长度,如果长度不等于3,则说明选择的不是三级分类,只需要将v-model绑定的数组(当前选中的值)清空即可,对应的选择器中的选择项也会被清空。

如果在级联框中选中了一项,则启用tab标签栏,否则,tab标签栏处于禁用状态

如何实现呢?定义一个计算属性,根据级联选择数组的长度返回一个bool值,从而控制按钮的启用和禁用

3.3实现参数列表

①根据选择的商品分类加载对应的参数数据

添加参数和添加属性共用一个弹出对话框:也通过计算属性绑定

②处理标签数据格式

将字符串形式的数据分隔为数组。

res.data.forEach(item=>{//把字符串的可选项,分割为数组,重新赋值给attr_valsitem.attr_vals=item.attr_vals.length>0item.attr_vals.split(‘,'):[]})实现展开列里面的数据渲染:

在getParamsData()函数中赋值之前添加下面这一段代码

出现一个bug:当我们新增一个参数后,展开列中应该没有内容,但是却有一个空的标签:

这是因为,如果attr_vals为空,则用split按空格分割之后得到的数组是包含一项的,就是空字符串,所以就渲染出了一个空白的el-tag

如何解决呢?过滤掉空字符串

③控制添加标签文本框的显示

$nextTick的执行时机:DOM更新完毕之后

+NewTagshowTagInput(row){row.tagInputVisible=true//当我们修改了data中tagInputVisible的值以后,如果要操作文本框,必须等页面重新渲染完毕之后才可以,//所以,必须把操作文本框的代码放到$nextTick中,当作回调去执行($nextTick的执行时机,是在DOM更新完毕之后)this.$nextTick(()=>{this.$refs.saveTagInput.$refs.input.focus()})}实现添加按钮与输入文本框之间的切换显示:使用v-if和v-else实现

出现一个bug:展开两项,然后点击其中一项的输入newtag按钮,但是两项都变成了输入文本框,并且输入其中一个文本框,另一个会有联动的效果

这是因为所有的input绑定的都是同一个if判断条件,数据双向绑定的也是同一个值。每渲染一个展开行,都公用同一个value值和bool值

如何解决呢?只需要给每一行的数据单独提供个value值和bool值

把inputVisible设置为true之后,页面上的元素还没有被重新渲染,也就是说页面上展示的还是button按钮,并不是文本输入框。所以要等到渲染完成之后,才去执行。

优化:当文本框中输入的内容后,失去焦点之后,再次点击按钮显示文本框,之前输入文本框中的内容并没有被清空。但是我们想要清除不合法的输入内容,比如说一串空格

出现一个bug:当我们选中一个三级分类之后,下面会显示相应的参数,然后当我们再切换选择为一个二级分类,但是不允许我们选择,所以级联选择框会自动被清空,但是下面的参数却还在。这样如果我们添加新tag时,会因为没有商品的id值而报错

解决方法:

④实现标签动态添加的文本框控制逻辑

res.data.forEach(item=>{//把字符串的可选项,分割为数组,重新赋值给attr_valsitem.attr_vals=item.attr_vals.length>0item.attr_vals.split(‘,'):[]//为每个数据行,添加自己的tagInputVisible,从而控制自己展开行中的输入框的显示与隐藏item.tagInputVisible=false//把文本框中输入的值,双向绑定到item.tagInputValue上item.tagInputValue=''})⑤实现标签的添加和删除操作

添加标签和删除标签使用的是同一个接口,参数是一样的。

本地goods_params的代码就是最新的了

使用gitpush-uorigingoods_params命令把本地的goods_params分支推送到云端中

THE END
1.经济与资源管理研究院是将商业资本转入产业资本以增强和提高小商品市场供给能力?是开拓国际市场寻求新的生长点?还是升级换代走向中高档市场?我以为,小商品市场发展的方向会因各地情况不同而有多种选择,但最关键的是,必须因势利导,尊重商家选择,而不能拔苗助长。管理者的责任,是不断发现新动向,提供新服务,而不能背离市场这个基础性调节...https://serm.bnu.edu.cn/kyxs/kycg/16ca029c028b4100b7557669c436ac9a.htm
2.ECS顺滑体验在新购ECS的选择镜像的时候有四个分类,分别为系统镜像,市场镜像,自定义镜像,共享镜像。那么它们有何区别?我们该如何选择镜像呢?下面我们先对四种镜像类型做一个对比: 如果从从实践方面考虑,选择镜像建议是: 只需要一个纯净的OS环境,选择官方系统镜像。 https://developer.aliyun.com/article/881381
3.微信小程序实战(仿小米商城)商品分类功能 逻辑分析:给页面注册个curIndex(当前选中菜单的下标),如果当前下标和选中的菜单下标相同,则处于激活状态部分代码:wxml: <view class="main"> <scroll-view scroll-y class="category-left"> <view class="cate-nav-list" wx:for="{{cate_nav_list}}" wx:key="{{item.id}}" data-id="{{...https://www.imooc.com/article/75153
1.淘宝类目在哪看(淘宝宝贝类目怎么看)作为一名电商商家,合理运用各种工具进行店铺运营是提高销售业绩的关键,了解淘宝类目对于商品分类、店铺定位以及吸引精准流量都具有重要意义,如何在淘宝上查看商品类目呢?以下将为您详细解答。 淘宝类目在哪看 1、淘宝首页搜索栏 在淘宝首页搜索栏输入您想要查看的商品关键词,点击搜索按钮,在搜索结果页面,可以看到左侧有一...https://bbx.duoduodashi.com/jiaocheng/852.html
2.笔记:商品标签设计思路及内容商品通用标签类目树可以由以下8个一级分类组成 基本信息 登记信息 实体属性 检测认证 售卖属性 从属信息 经手公司 消费群体 行业品类 服务信息 质量服务 支付服务 保障服务 生产制造 研发情况 生产记录 质量控制 评价评分 用户评价 市场评价 评分等级 财务分析 ...https://blog.csdn.net/CQ112617/article/details/143972202
3.如何查看商品属于什么类目?如何修改类目?4、选择正确的类目:在类目选择页面中,根据您的商品属性和实际情况,选择正确的类目。注意选择到最具体的子类目,以便让买家更容易找到您的商品。 总之,查看和修改商品类目是电商卖家日常运营中的重要环节。通过合理利用电商平台的功能和工具,以及咨询平台客服,您可以轻松掌握商品类目的查看和修改方法,为提升商品曝光和销售...https://m.maijia.com/article/590506
4.京东商品分类京东商城(京东商品分类京东商城是国内最大的综合性电商平台之一,其商品分类十分丰富,涵盖了数十个品类,为消费者提供了广泛的选择。在京东商城上购物,我们可以轻松找到所需的商品,享受到便捷、快速的购物体验。 京东商城的商品分类设计非常合理。无论是家居用品、电子产品、服装鞋帽还是食品饮料,都有专门的分类进行归类。这样一来,消费者可以...https://m.ae1234.com/article/172339.html
5.帮助中心根据您问题的性质选择相应的分类 3:设置悬赏分 设置悬赏分,可以让您的问题得到更多的关注,当然悬赏分越高,受关注度也越高。 请您注意,设置了悬赏分并提交后,悬赏分就立即您的账户中扣除。您选择了最佳答案后,悬赏分将由系统赠送给最佳答案的回答者。 三、提交问题 在提问之后,点击页面底部的“提问问题”按钮,...https://www.tongyi.com/index.php/helpp/search
6.ozon商品如何设置库存2.在“商品”选项卡下选择“产品管理”; 3.选择需要添加库存的产品; 4.在“Stocks”(库存)标签页下,可以看到当前的库存信息; 5.点击“AddStock”(添加库存)按钮; 6.输入要添加的库存数量和价格; 7.选择库存的地区(如果您的产品有多个地区的库存,每个地区都需要单独添加); ...https://www.amz123.com/ask/grdQydYd
7.2013年7月自考消费经济学真题分享!4.当消费者选择商品X和Y的数量组合时,下列关于预算线的说法正确的是() A.当X的价格发生变化时,围绕预算约束线与横轴交点旋转 B.当Y的价格发生变化时,围绕预算约束线与纵轴交点旋转 C.当消费者的偏好变化时,向外平移 D.当收入提高时,向外平移 5.人们进行消费或储蓄决策的主要依据是() ...https://www.eol.cn/baokao/zk-wyw/20230509142123.html
8.软件问题解答亚马逊ASIN采集器使用常见问题汇总解答–创想...用户也可以自己输入要采集的ASIN码,采集指定ASIN码的详细信息,可点击“添加单个商品采集”按钮,批量添加ASIN码,选择国家,再点“手动采集列表详细信息”按钮即可开始采集。 问:采集器支持采集那些页面数据? 答:目前采集器支持每页26、24、48、60个商品的链接批量抓取、支持分类HOT100、 seller链接批量抓取、支持RANK分类...https://blog.cxsup.com/archives/187
9.拼多多开店商品分类错误的处理办法在拼多多开店,商品分类是非常重要的;如果商品分类不正确,是会导致流量降权、无法成功报名活动、商品下架等等不必要的风险。所以关于拼多多商品分类的选择、更改等这些问题,大家一定要弄清楚。像拼多多开店商品分类错误该怎么处理?下面来详细了解看看吧。 1、我在当前分类里找不到适合自己的商品分类,该怎么办? https://wz.yuzhua.com/consulte/235343.html
10.运营指标和KPI综合指南NetSuite中国官网选择有意义的运营 KPI。企业可以将这些运营 KPI 集中到运营指标仪表盘中以便即时查看。 确定当前绩效。 对比当前绩效与目标,判断当前绩效是否达到了目标。 NetSuite ERP 以商务为中心的仪表盘 如果答案是否定的,执行深入分析,查找哪些方面表现不佳。 《企业绩效管理》一书的作者 Andy Neely 总结了影响企业绩效的五个...https://www.netsuite.cn/resource/articles/erp/operational-kpis-metrics.shtml
11.抖音电商商品sku分类怎么选抖音运营自媒体回答:选择分类后,非主售款及信息说明/防拍的SKU,不影响正常售卖。同时可帮助推荐系统更准确理解商品,提升推荐效率。 非主售款怎么判定? 回答:主要参考商品标题及商品图片,确定当前售卖的SKU是否符合标题及首张主图所描述的商品信息,若存在材质、款式、数量等明显差异,则为非主售。 https://www.jb51.net/zimeiti/890520.html
12.2015年经济师《中级经济基础》全真模拟试卷(含答案)五A.在对商品进行科学分类基础上选择各类别商品的代表规格品 B.采用加权算术平均形式计算总指数 C.在全国所有地区收集数据 D.根据主观判断确定商品的权数 E.采用代表规格品的全社会综合平均价作为计算的依据 93.一项经济业务发生后会引起相关会计要素的变动。下列会计要素变动情形中,正确的有( )。 A.一项资产和一项负...https://www.hqwx.com/web_news/html/2014-11/201411201100381033.html
13.京东JD客服认证初级考试选择题题库如果你想做一名京东客服,首先你要通过京东客服考试,以下京东JD客服认证初级考试选择题题库你有必要了解一下。 单选题 1、货到后只给用户送到楼下在《电商差评分类标准》里面,属于哪一项? A 物流不主动预约 B 物流虚假签收 C 物流送货拖期 D 物流不送货上楼 正确答案:D 2、如果一个店铺90天内1星...https://www.mmker.cn/article/3745.html
14.满意度调查报告精选15篇为了加强校园超市与其主要顾客群体学生的沟通,本次调查首先通过市场调查了解超市各因素如商品价格,商品种类,超市环境,服务态度等在学生消费者心里的重要性程度,以便于了解在校大学生的消费观念和消费习惯。再者,通过市场调查了解当前客户(学生)对目前高校超市的主要映像,包括对商品质量价格,工作人员服务态度等的看法。以及学...https://www.jy135.com/diaochabaogao/1335984.html
15.便利店创业策划书(精选10篇)零售业,一个商品平凡不能平凡的商品交易场所,她带给的人们的一些期望,没有负于其它行业。如何在这一块新型的圣地发挥商品的潜能,如何驾驭商品的成功之帆?这就要学会如何做到商品正确市场调查。 七、商品分类: 1、主妇商品,这种商品的价格如有轻微的变动有些顾客即有相当的关注。顾客对这种商品的价格敏感度最高。同...https://www.oh100.com/chuangye/4681422.html
16.最新版税控开票软件(税收分类编码版)在开具发票时的常见问题汇总...2、问题描述:最新版开票软件(税收分类编码版)在开具发票时,如果选择了一个没有税收分类编码的商品,会有什么报错? 答:会提示“无商品分类信息的商品不可选”,解决方案:为该商品输入上税收分类编码。 3、问题描述:进入开票系统,提示英文错“.NET Framework Initialization Error”,如何处理? https://www.bangcheng0769.com/searchdetail-2673.html
17.商品学的判断题填空题选择题(精选8篇)A.气味 B.弹性 C.商品成分 D.卫生性 8.属于商品质量认证标志的有《A》 A.方圆标志 B.商检标志 C.绿色食品标志 D.全羊毛标志 9.仿冒者无法仿冒的防伪标识是《C》 A.激光标志 B.条形码标志 C.电码标识 D.水印纸标志 10.唯一性原则是在选择商品分类标志时必须遵循的原则之一,其含义主要是指在体系中的《...https://www.360wenmi.com/f/fileo07o3m1x.html
18.千方百剂系统常见问题及解决方法阜阳用友软件利辛用友软件期初库存商品、当期库存商品、判断配伍禁忌、判断过账单据、草稿单据。 五、年结存后需要删除单位信息,系统需要检测哪些内容? 过账单据、门店信息对应往来单位关联、期初库存对应供应商、进货价格跟踪、销售价格跟踪、期初库存代销对应的往来单位、期初和当前无应收应付、父类信息。 http://m.fychenyou.com/sys-nd/1378.html