商城-商品管理-商品查询
4.商品查询
4.1.效果预览
接下来,我们实现商品管理的页面,先看下我们要实现的效果:
可以看出整体是一个table,然后有新增按钮。是不是跟昨天写品牌管理很像?
模板代码在分别在Goods.vue
4.2.从0开始
接下来,我们自己来实现一下,新建两个组件:MyGoods.vue和MyGoodsForm.vue
内容先随意:
<template>
<v-card>
MyGoods
</v-card>
</template>
<script>
export default {
name: "my-goods",
data() {
return {
}
}
}
</script>
<style scoped>
</style>
然后修改menu.js,新建一个菜单:
修改router/index.js,添加一个路由:
预览一下:
4.3.页面实现
4.3.1.页面基本表格
商品列表页与品牌列表页几乎一样,我们可以直接去复制一份过来,然后进行一些修改。
首先,字段不一样,商品列表也展示的SPU信息,包含以下字段:
id:
title:标题
cname:商品分类名称
bname:品牌名称
完整代码:
<template>
<v-card>
<v-card-title>
<v-btn color="primary" @click="addGoods">新增商品</v-btn>
<!--搜索框,与search属性关联-->
<v-spacer/>
<v-text-field label="输入关键字搜索" v-model.lazy="search" append-icon="search" hide-details/>
</v-card-title>
<v-divider/>
<v-data-table
:headers="headers"
:items="goodsList"
:search="search"
:pagination.sync="pagination"
:total-items="totalGoods"
:loading="loading"
class="elevation-1"
>
<template slot="items" slot-scope="props">
<td>{
{ props.item.id }}</td>
<td class="text-xs-center">{
{ props.item.title }}</td>
<td class="text-xs-center">{
{props.item.cname}}</td>
<td class="text-xs-center">{
{ props.item.bname }}</td>
<td class="justify-center layout">
<v-btn color="info" @click="editGoods(props.item)">编辑</v-btn>
<v-btn color="warning">删除</v-btn>
<v-btn >下架</v-btn>
</td>
</template>
</v-data-table>
<!--弹出的对话框-->
<v-dialog max-width="500" v-model="show" persistent>
<v-card>
<!--对话框的标题-->
<v-toolbar dense dark color="primary">
<v-toolbar-title>{
{isEdit ? '修改' : '新增'}}商品</v-toolbar-title>
<v-spacer/>
<!--关闭窗口的按钮-->