element 分页 get 和post 传参

export const getRoleEdit = params => put('/api-user/roles', params);

export const getRole = (params) => get(`/api-user/listRoles?pageNum=${params.pageNum}&&pageSize=${params.pageSize}&&name=${params.name}`);

<template>

    <div class="content_bg">

        <div class="content">

            <el-form :inline="true" :model="formInline" class="demo-form-inline">

                <el-form-item label="角色名:">

                    <el-input v-model="formInline.user" placeholder="角色名"></el-input>

                </el-form-item>

                <el-form-item>

扫描二维码关注公众号,回复: 13064505 查看本文章

                    <el-button type="primary" icon="el-icon-search" @click="handerSearch">搜索</el-button>

                </el-form-item>

                <el-form-item style="float: right">

                    <el-button type="primary" icon="el-icon-circle-plus-outline" @click="handerAdd">添加</el-button>

                </el-form-item>

            </el-form>

            <el-table :data="tableData" border style="width: 100%" row-key="id">

                <el-table-column prop="code" label="code" align="center"> </el-table-column>

                <el-table-column prop="name" label="角色名" align="center"> </el-table-column>

                <el-table-column prop="updateTime" label="修改时间" align="center"> </el-table-column>

                <el-table-column fixed="right" label="操作" width="300" align="center">

                    <template slot-scope="scope">

                        <el-button @click="handleEdit(scope.row)" type="primary" size="small" :disabled="scope.row.id == 1"><i class="el-icon-edit"></i></el-button>

                        <el-button @click="handleDelete(scope.row)" type="primary" size="small" :disabled="scope.row.id == 1"><i class="el-icon-delete"></i></el-button>

                        <el-button type="primary" size="small" :disabled="scope.row.id == 1">分配权限</el-button>

                    </template>

                </el-table-column>

            </el-table>

             <div style="margin-top: 30px;float: right;">

                <el-pagination

                    @size-change="handleSizeChange"

                    @current-change="handleCurrentChange"

                    :current-page="pageNum"

                    :page-sizes="[1, 2, 30, 40]"

                    :page-size="pageSize"

                    layout="total, sizes, prev, pager, next, jumper"

                    :total="total">

             </el-pagination>

           </div>

        </div>

        <el-dialog :title="flagName ? '添加' : '编辑'" :visible.sync="centerDialogVisible" width="50%" center>

            <el-form label-position="top" label-width="80px" :model="formLabelAlign">

                <el-form-item label="code(不能修改)" v-if="flagName">

                    <el-input v-model="formLabelAlign.code"></el-input>

                </el-form-item>

                <el-form-item label="code" v-else>

                    <el-input v-model="formLabelAlign.code" disabled></el-input>

                </el-form-item>

                <el-form-item label="角色">

                    <el-input v-model="formLabelAlign.name"></el-input>

                </el-form-item>

            </el-form>

            <span slot="footer" class="dialog-footer">

                <el-button @click="centerDialogVisible = false">返回</el-button>

                <el-button type="primary" @click="handerAddSave" v-if="flagName">保存</el-button>

                <el-button type="primary" @click="handerEditSave" v-else>保存</el-button>

            </span>

        </el-dialog>

       

    </div>

</template>

<script>

import { getRole, getRoleEdit, getRoleAdd, getRoleDelete } from '@/api/index';

export default {

    methods: {

        handleClick(row) {

            console.log(row);

        }

    },

    data() {

        return {

             pageNum: 1,

             pageSize: 10,

             total: 0,

            formInline: {

                user: ''

            },

            flagName: false,

            centerDialogVisible: false,

            formLabelAlign: {

                name: '',

                code: ''

            },

            tableData: []

        };

    },

    created() {

        this.getRoleList({});

    },

    methods: {

         handleSizeChange(val) {

        console.log(`每页 ${val} 条`);

        this.pageSize = val;

        this.getRoleList();

      },

      handleCurrentChange(val) {

        console.log(`当前页: ${val}`);

        this.pageNum = val;

        this.getRoleList();

      },

        // 查询

        getRoleList() {

            let params = {

                pageNum: this.pageNum,

                pageSize: this.pageSize,

                name: this.formInline.user

            }

            getRole(params).then(res => {

                if (res.status == 200) {

                    this.tableData = res.data.data.list;

                    this.total = res.data.data.total;

                    this.pageNum = res.data.data.pageNum;

                    this.pageSize = res.data.data.pageSize;

                }

            });

        },

        // 搜索

        handerSearch() {

            this.getRoleList(this.formInline.name);

        },

        // 添加

        handerAdd() {

            this.formLabelAlign = {};

            this.flagName = true;

            this.centerDialogVisible = true;

        },

        // 编辑

        handleEdit(row) {

            console.log(111, row);

            this.flagName = false;

            this.centerDialogVisible = true;

            this.formLabelAlign = row;

        },

        // 添加保存

        handerAddSave() {

            getRoleAdd(this.formLabelAlign).then(res => {

                this.centerDialogVisible = false;

                this.getRoleList();

                this.$message.success('添加成功');

            });

        },

        // 编辑保存

        handerEditSave() {

            getRoleEdit(this.formLabelAlign).then(res => {

                this.centerDialogVisible = false;

                this.getRoleList();

                this.$message.success('修改成功');

            });

        },

        handleDelete(row) {

            this.$confirm('确定要删除吗?', '信息', {

                confirmButtonText: '确定',

                cancelButtonText: '取消',

                type: 'warning'

            })

                .then(() => {

                    getRoleDelete(row.id).then(res => {

                        this.getRoleList();

                        this.$message({

                            type: 'success',

                            message: '删除成功!'

                        });

                    });

                })

                .catch(() => {

                    this.$message({

                        type: 'info',

                        message: '已取消删除'

                    });

                });

        }

    }

};

</script>

<style lang="less" scoped></style>

猜你喜欢

转载自blog.csdn.net/wwf1225/article/details/114693715