1.概述
定义一个弹窗,当点击查看的按钮时,显示出弹窗
2.具体代码展示
<template slot-scope="scope">
<el-button size="mini" type="primary" icon="el-icon-s-tools">地址</el-button>
<el-button size="mini" type="success" icon="el-icon-location" @click="showExpress(scope.row.id)">物流</el-button>
</template>
<el-dialog title="物流信息" :visible.sync="expressVisible">
</el-dialog>
showExpress(oid) {
this.expressVisible = true
}
3.效果展示
在这里插入图片描述
4.完整代码展示
<!-- src/components/order/Order.vue -->
<template>
<div>
<!-- 面包屑使用 -->
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item :to="{ path: '/home' }">首页</el-breadcrumb-item>
<el-breadcrumb-item>订单管理</el-breadcrumb-item>
<el-breadcrumb-item>订单列表</el-breadcrumb-item>
</el-breadcrumb>
<!-- 内容 -->
<el-card>
<!-- 内容1 -->
<el-row>
<!-- 搜索框 -->
<el-col :span="8">
<el-input v-model="qid" placeholder="请输入搜索名称" clearable @clear="getOrderList">
<!-- 绑定发送请求的函数getGoodsList -->
<el-button slot="append" icon="el-icon-search" @click="getOrderList"></el-button>
</el-input>
</el-col>
</el-row>
<!-- 内容2 -->
<el-row>
<el-table :data="orderList" border>
<el-table-column type="index"></el-table-column>
<el-table-column prop="id" label="id"></el-table-column>
<el-table-column prop="uname" label="订单用户"></el-table-column>
<el-table-column prop="price" label="金额"></el-table-column>
<el-table-column prop="pay_status" label="是否支付">
<template slot-scope="scope">
<el-tag v-if="scope.row.pay_status === 0" type="success">未支付</el-tag>
<el-tag v-else type="danger">已支付</el-tag>
</template>
</el-table-column>
<el-table-column prop="is_send" label="是否发件">
<template slot-scope="scope">
<el-tag v-if="scope.row.is_send === 0" type="success">未发货</el-tag>
<el-tag v-else type="danger">已发货</el-tag>
</template>
</el-table-column>
<el-table-column prop="操作" width="200px">
<template slot-scope="scope">
<el-button size="mini" type="primary" icon="el-icon-s-tools">地址</el-button>
<el-button size="mini" type="success" icon="el-icon-location" @click="showExpress(scope.row.id)">物流</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
</el-card>
<el-dialog title="物流信息" :visible.sync="expressVisible">
</el-dialog>
</div>
</template>
<script>
export default {
data() {
return{
qid: '',
orderList:'',
expressVisible: false
}
},
created(){
this.getOrderList()
},
methods: {
// 发送请求获取订单列表
async getOrderList() {
const { data: res } = await this.$axios.get('/api/order_list')
if (res.status !== 200) return this.$msg.error(res.msg)
// console.log(res.data);
this.$msg.success(res.msg)
this.orderList = res.data
},
showExpress(oid) {
this.expressVisible = true
}
}
}
</script>
<style>
.el-table{
margin-top: 10px;
}
</style>