记录1:vue请求后台接口,展示表格数据

一:设置请求接口配置

//request.js
import axios from 'axios'; const service = axios.create({ // process.env.NODE_ENV === 'development' 来判断是否开发环境 // easy-mock服务挂了,暂时不使用了 // baseURL: 'https://www.easy-mock.com/mock/592501a391470c0ac1fab128', timeout: 5000 }); service.interceptors.request.use( config => { return config; }, error => { console.log(error); return Promise.reject(); } ); service.interceptors.response.use( response => { console.log(response) if (response.data.code === 20000) { return response.data.data; } else { Promise.reject(); } }, error => { console.log(error); return Promise.reject(); } ); export default service;
//index.js 包装请求动作
import request from '../utils/request';

/* export const fetchData = query => {
    return request({
        url: './table.json',
        method: 'get',
        params: query
    });
}; */
export const fetchData = query => {
    return request({
        url: 'http://localhost:8080/fruitsaleapi/shopProductController/getList',
        method: 'post',
        params: query  //页面参数
    });
};

下面是页面代码
<el-table
                :data="tableData" //绑定动态数据属性
                border
                class="table"
                ref="multipleTable"
                header-cell-class-name="table-header"
                @selection-change="handleSelectionChange"
            >
                <el-table-column type="selection" width="55" align="center"></el-table-column>
                <el-table-column prop="id" label="ID" width="55" align="center"></el-table-column>//对应动态数据属性里的字段 》 prop
                <el-table-column prop="buhege" label="用户名"></el-table-column>
                <el-table-column label="账户余额">
                    <template slot-scope="scope">¥{{scope.row.date}}</template> //可以自己设置展示内容,不使用prop
                </el-table-column>
                <el-table-column label="头像(查看大图)" align="center">
                    <template slot-scope="scope">
                        <el-image
                            class="table-td-thumb"
                            :src="scope.row.thumb"
                            :preview-src-list="[scope.row.thumb]"
                        ></el-image>
                    </template>
                </el-table-column>
                <el-table-column prop="hege" label="地址"></el-table-column>
                <el-table-column label="状态" align="center">
                    <template slot-scope="scope">
                        <el-tag
                            :type="scope.row.state==='成功'?'success':(scope.row.state==='失败'?'danger':'')"
                        >{{scope.row.state}}</el-tag>
                    </template>
                </el-table-column>
                
                <el-table-column prop="date" label="注册时间"></el-table-column>
                <el-table-column label="操作" width="180" align="center">
                    <template slot-scope="scope">
                        <el-button
                            type="text"
                            icon="el-icon-edit"
                            @click="handleEdit(scope.$index, scope.row)"
                        >编辑</el-button>
                        <el-button
                            type="text"
                            icon="el-icon-delete"
                            class="red"
                            @click="handleDelete(scope.$index, scope.row)"
                        >删除</el-button>
                    </template>
                </el-table-column>
            </el-table>
//定义属性以及query请求后台接口的参数对象
export default { name: 'basetable', data() { return { query: { brandid: 1, pageIndex: 1, pageSize: 10 }, tableData: [], multipleSelection: [], delList: [], editVisible: false, pageTotal: 0, form: {}, idx: -1, id: -1 }; },

调用:

 1 created() {
 2         this.getData();
 3     },
 4     methods: {
 5         // 获取 easy-mock 的模拟数据
 6         getData() {
 7             fetchData(this.query).then(res => {
 8                 console.log(res);
 9                 this.tableData = res;
10                 console.log(this.tableData)
11                 this.pageTotal = res.length || 50;
12             });
13         },

 

posted @ 2020-10-30 14:10  根目录97  阅读(1815)  评论(0编辑  收藏  举报