管理后台项目-04-SPU列表-增删改SPU-获取SKU【续】

news2024/12/24 8:21:36

目录

1-删除spu

2-添加sku

2.1-获取skuForm页面组件的数据

2.2-收集form表单数据

2.3-保存提交数据

3-查看SKU信息和loading效果


上一篇文章管理后台项目-03-SPU列表-增删改SPU-获取SKU_ycmy2017的博客-CSDN博客内容较多,交互逻辑有点复杂,所以分两篇文章编写,这篇文章继续编写spu模块没有开发完成的功能。

1-删除spu

先做spu列表页面的删除spu功能,当用户点击列表页面的删除按钮时,我们需要提示用户,并且想服务器发送请求,删除对应的spu记录。删除记录后,需要重新获取数据;但是如果是

 

 

2-添加sku

 

 

需求:当用户点击列表上面的添加sku按钮后,我们需要展示添加sku的form表单;需要收集和填写相关信息,当用户点击保存按钮后,我们需要向服务器发送请求,添加sku信息。

2.1-获取skuForm页面组件的数据

首先,用户点击添加sku按钮,我们需要切换场景(从列表页面到添加sku页面),进入到sku页面,我们首先要获取平台属性-销售属性-图片列表数据。所以我们需要在父组件中点击添加sku按钮,需要子组件获取信息,需要父组件调用子组件的方法,采用this.$refs来实现。

 

 

 

//获取图片的数据  /admin/product/spuImageList/{spuId}  get
export const reqSpuImageLIst = (spuId)=>request({url:`/admin/product/spuImageList/${spuId}`,method:'get'});

//获取销售属性的数据 /admin/product/spuSaleAttrList/{spuId}  get
export const reqSpuSaleAttrList = (spuId)=>request({url:`/admin/product/spuSaleAttrList/${spuId}`,method:'get'});

//获取平台属性的数据  GET /admin/product/attrInfoList/{category1Id}/{category2Id}/{category3Id}
export const reqAttrInfoList = (category1Id,category2Id,category3Id)=>request({url:`/admin/product/attrInfoList/${category1Id}/${category2Id}/${category3Id}`,method:'get'});

 

 

 

2.2-收集form表单数据

我们需要收集表单数据,后续需要组装数据给服务器发送请求。对于sku名称,价格,重量,规格描述等信息,我们直接可以使用v-model来收集。
 

 对于平台属性和销售属性,收集方法类似,我们只要解决一个,另外一个就可以解决。比如平台属性,我们到时候需要向服务器提交属性id和属性值id;属性是个数组,有很多个,我们可以将数据收集到数组的每个对象里面(给对象新加一个字段),到时候整理参数的时候,直接从里面获取就行。

 对于图片,当我们选中图片的时候,我们需要收集到用户选中的图片,选中框使用el-table的@selection-change事件处理。图片列表中,有个设置默认和默认两个按钮,我们需要通过字段isDefault来实现切换,当我们点击设置默认后,我们需要将默认照片的url传递给服务器,所以还需要赋值给skuInfo对象中的字段。

 

 

2.3-保存提交数据

当用户点击保存的时候,我们需要按照服务器的要求,调用服务端接口并且提交数据给服务器。有些数据我们已经有了,但是有些数据我们需要整理,按照服务端的接口文档来提交参数。
 

 

//添加SKU /admin/product/saveSkuInfo  post

export const reqAddSku = (skuInfo)=>request({url:'/admin/product/saveSkuInfo',method:'post',data:skuInfo});

 使用了数组的reduce方法来构建新的数组,使用了数组的map方法来构建新的数组。
prev:接受的新的数组;item:遍历数组的每个对象;[]:给新的数组默认空
map:将原始数组的对象,映射为新数组的每个对象

 

 

 

当用户点击取消的时候,我们需要切换场景,需要清除之前的数据。

 

3-查看SKU信息和loading效果

当用户点击spu列表上查看全部sku列表信息时,需要弹框展示sku信息(列表),需要使用到el-dialog组件,需要带table的dialog组件。

//获取SKU列表数据的接口  GET /admin/product/findBySpuId/{spuId}  
export const reqSkuList = (spuId)=>request({url:`/admin/product/findBySpuId/${spuId}`,method:'get'});

 

 

 

当点击对话框弹框上的关闭按钮时,触发el-dialog组件的before-close事件,所以我们需要对这个事件绑定一个函数,处理相关逻辑,loading属性值改变,清除skuList数据,done()对话框管理。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/450582.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

微风·六·JAVA中“==”、hashcode、equals及字符串常量池的区别

vector线程安全的集合 hashset底层为hashmap 文章目录 1 “”和equals的区别是什么?1.1 “”解释1.2 “equals”解释1.3 注意点:equals不能比较基本数据类型1.4 Integter缓存数组1.4.1 引入案例发现问题1.4.2 解释缓存数组 1.5 字符串常量池1.5.1 案例一1.5.2 案例…

视频直播网站开发的最佳实践

随着互联网技术的不断发展,视频直播成为了网络世界中的一股热潮。无论是企业还是个人,都可以通过搭建自己的视频直播网站来实现自己的目标。但是,对于很多企业来说,视频直播网站的开发是一项复杂的任务。因此,本文将介…

响应式开发(HTML5CSS3)实现媒体查询的功能案例

目录 前言 一、媒体查询知识点 二、实现功能的尺寸 三、代码部分 1.不带嵌套的媒体查询功能 1.1.代码段 1.2.运行结果 2.带嵌套的媒体查询功能 2.1.代码段 2.2.运行结果 2.2.3视频效果 前言 1.本文讲解的响应式开发技术(HTML5CSS3Bootstrap&#xff09…

C语言开发环境搭建及调试

C简介 可移植 标准C C/C (系统硬件操作的接口,windows,Linux不一样) 跨平台 Java Python 下载 去官网选择Visual Studio 2019下载 安装过程中勾选使用C的桌面开发 安装好之后点击创建新项目——空项目 位置最好放在根目录下&…

从数据管理到数据资产管理

数据已经与土地、劳动力、资本、技术并称为五种生产要素,数据的价值是毋庸置疑的。数据甚至成为了国家的基础性战略资源,数字经济也正在成为经济增长的强大创新动力。那么—— 数据到底指的是什么? 数据管理又是怎么回事? 数据如何…

Django项目之经济预测平台,应用LSTM、GBDT等算法

一、平台功能与技术点 1.技术点:Python3.9、Django4.1.7, tensorflow2.11.0,keras2.11.0,numpy1.24.2、bootstrap、ajax、MySQL等等 2.功能:正常前后端,前台主要完成经济预测功能(特征和标签都…

✨✨✨ ❃ ♕ ꕥXpath解析html获取表情符号,丰富你的文章 ꧁ ꧂꧁ ꧂

✨✨✨ ❃ ♕ ꕥXpath解析html获取表情符号,丰富你的文章 ꧁ ꧂꧁ ꧂ 1. 推荐几个好玩的表情符号网站2. xpath解析html获取表情3. xpath解析html源码3.1 parse_li.py3.2 symbol2.html 参考 1. 推荐几个好玩的表情符号网站 💕 🧚 &#x1f6b…

SPDK软件栈基础概念

SPDK SPDK软件架构SSD和SPDK中controller和nsSPDK RPC (一)driverSPDK virtio-PCIe 和 vhost-user (二)Storage Services(存储设备)对象存储SPDK BlobStore&BlobFS SPDK 块设备驱动块设备驱动层的其他模块 (三&…

KMP字符串匹配算法详解

目录 简单的暴力匹配算法KMP算法next数组next数组的优化 简单的暴力匹配算法 对于字符串的匹配通常是给出一个主串str和一个模式串sub,然后在主串pos位置开始匹配,如果能在str中找到sub那么就返回sub在str中首次出现的首个字符的下标,否则返…

地球系统模式(CESM)

目前通用地球系统模式(Community Earth System Model,CESM)在研究地球的过去、现在和未来的气候状况中具有越来越普遍的应用。CESM由美国NCAR于2010年07月推出以来,一直受到气候学界的密切关注。近年升级的CESM2.0在大气、陆地、海…

【论文笔记】VideoGPT: Video Generation using VQ-VAE and Transformers

论文标题:VideoGPT: Video Generation using VQ-VAE and Transformers 论文代码:https://wilson1yan. github.io/videogpt/index.html. 论文链接:https://arxiv.org/abs/2104.10157 发表时间: 2021年9月 Abstract 作者提出了…

git 常用命令及遇到问题

自己没事,把git常用命令做个记录总结。方便自己和初学者查看,本文针对初学者,如果你已经是工作多年高手,请跳过。 git的几个区认识,分别为工作区,缓存区,版本库。 工作区:包含.git…

靶机精讲:BNE0x03Simple

主机发现 nmap扫描 端口扫描 服务扫描 脚本扫描 第二十页路径有目录 web渗透 搜索该版本漏洞 CuteCMS漏洞利用 下载下来 查看文件,发现是远程文件上传漏洞 按步骤进行注册 点进去 构造利用文件,反弹shell 最后语法错误应为0>1 尝试上传 根据漏洞扫…

实验04:图像压缩(DP算法)

1.实验目的: 掌握动态规划算法的基本思想以及用它解决问题的一般技巧。运用所熟悉的编程工具,运用动态规划的思想来求解图像压缩问题。 2.实验内容: 给定一幅图像,求解最佳压缩,使得压缩后的文件最小。 3.实验要求…

容易忽视的细节:Log4j 配置导致的零点接口严重超时

作者:vivo 互联网服务器团队- Jiang Ye 本文详细的记录了一次0点接口严重超时的问题排查经历。本文以作者自身视角极具代入感的描绘了从问题定位到具体的问题排查过程,并通过根因分析并最终解决问题。整个过程需要清晰的问题排查思路和丰富的问题处理经验…

大话数据结构-查找

1 查找概论 查找表(Search Table)是由同一类型的数据元素(或记录)构成的集合,如下所示:   关键字(Key)是数据元素中某个数据项的值,又称为键值,用它可以标…

LiteFlow规则引擎的入门

文章目录 1、LiteFlow简介2、解决的痛点3、快速开始3.1 引入依赖3.2 配置规则文件的位置3.3 定义组件3.4 指定规则3.5 编写客户端3.6 运行以及说明3.7 其他的组件 4、对于快速开始的思考5、LiteFlow的脚本组件5.1 脚本的定义5.2 脚本的使用5.3 关于脚本使用的思考 6、规则引擎的…

开源Qt Ribbon控件——SARibbon的布局思路及介绍

开源Qt Ribbon控件——SARibbon的布局思路及介绍 SARibbon的布局SARibbon名词定义Office布局模式——SARibbonBar::OfficeStyleWPS布局模式——SARibbonBar::WpsLiteStylepannel的布局行数3行模式2行模式 原文链接:https://blog.csdn.net/czyt1988/article/details/…

scala之基础面向对象

scala 既是面向对象 也是函数式编程 从Java 发展而来,依赖JVM环境 一、 scala 在linux中运行 scala 模式中直接编写运行 scala文件,load执行 scala编译程序 编译 运行 scala java 二、scala 数据类型 基础数据类型 val 不可变变量 函数式编程 …

Excel使用频率超高的20个函数,90%你没用过

上班必学必会的Excel函数,不仅是使用频率最大的,还是告别加班的利器。你会的函数越多,解决问题的思路越广,不再束手束脚。态度决定高度,细节决定成败。要想比别人更优秀,只有在每一件小事上比功夫。 组合、…