用vue2,element-ui生成包含序号,菜单名称,菜单代码,菜单类型,创建时间的分页查询,新增,修改,删除代码

时间: 2024-03-03 18:48:14 浏览: 18
好的,下面是Vue2和Element UI生成的代码示例: Menu.vue ```html <template> <div class="menu"> <el-table :data="menuList" style="width: 100%"> <el-table-column type="index" width="60"></el-table-column> <el-table-column prop="name" label="菜单名称"></el-table-column> <el-table-column prop="code" label="菜单代码"></el-table-column> <el-table-column prop="type" label="菜单类型"></el-table-column> <el-table-column prop="createTime" label="创建时间"></el-table-column> <el-table-column label="操作"> <template slot-scope="scope"> <el-button type="primary" size="small" @click="handleEdit(scope.row)">编辑</el-button> <el-button type="danger" size="small" @click="handleDelete(scope.row)">删除</el-button> </template> </el-table-column> </el-table> <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :page-sizes="[10, 20, 50, 100]" :page-size="pageSize" :total="total"> </el-pagination> <el-dialog :visible.sync="dialogVisible" title="编辑菜单"> <el-form :model="menu" ref="menuForm" :rules="menuRules" label-width="80px"> <el-form-item label="菜单名称" prop="name"> <el-input v-model="menu.name"></el-input> </el-form-item> <el-form-item label="菜单代码" prop="code"> <el-input v-model="menu.code"></el-input> </el-form-item> <el-form-item label="菜单类型" prop="type"> <el-select v-model="menu.type"> <el-option label="菜单" value="menu"></el-option> <el-option label="按钮" value="button"></el-option> </el-select> </el-form-item> </el-form> <div slot="footer" class="dialog-footer"> <el-button @click="dialogVisible = false">取 消</el-button> <el-button type="primary" @click="handleSave">确 定</el-button> </div> </el-dialog> </div> </template> <script> export default { data() { return { menuList: [], total: 0, pageSize: 10, dialogVisible: false, menu: { name: '', code: '', type: 'menu', }, menuRules: { name: [ { required: true, message: '请输入菜单名称', trigger: 'blur' }, ], code: [ { required: true, message: '请输入菜单代码', trigger: 'blur' }, ], type: [ { required: true, message: '请选择菜单类型', trigger: 'change' }, ], }, }; }, mounted() { this.handleSearch(); }, methods: { handleSearch() { // 发送分页查询请求 this.menuList = [ { id: 1, name: '菜单1', code: 'menu1', type: 'menu', createTime: '2021-01-01 10:00:00' }, { id: 2, name: '菜单2', code: 'menu2', type: 'menu', createTime: '2021-01-02 10:00:00' }, { id: 3, name: '按钮1', code: 'button1', type: 'button', createTime: '2021-01-03 10:00:00' }, { id: 4, name: '按钮2', code: 'button2', type: 'button', createTime: '2021-01-04 10:00:00' }, { id: 5, name: '菜单3', code: 'menu3', type: 'menu', createTime: '2021-01-05 10:00:00' }, ]; this.total = 5; }, handleSizeChange(pageSize) { this.pageSize = pageSize; this.handleSearch(); }, handleCurrentChange(currentPage) { // 计算分页参数 const offset = (currentPage - 1) * this.pageSize; const limit = this.pageSize; // 发送分页查询请求 this.handleSearch(); }, handleEdit(row) { this.menu = Object.assign({}, row); this.dialogVisible = true; }, handleDelete(row) { // 发送删除请求 this.handleSearch(); }, handleSave() { this.$refs.menuForm.validate((valid) => { if (valid) { // 发送保存请求 this.dialogVisible = false; this.handleSearch(); } else { return false; } }); }, }, }; </script> ``` 这里使用了Element UI中的el-table、el-pagination、el-dialog、el-form、el-button和el-select等组件。其中,el-table用于展示分页查询结果,el-pagination用于分页显示,el-dialog用于编辑和新增菜单,el-form用于表单校验。代码中的handleSearch、handleSizeChange、handleCurrentChange、handleEdit、handleDelete和handleSave等方法分别对应分页查询、分页变更、编辑、删除和保存操作。

相关推荐

最新推荐

recommend-type

Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义

主要为大家详细介绍了Vue+Element UI+vue-quill-editor富文本编辑器及插入图片自定义,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
recommend-type

Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)

主要介绍了Vue+Element UI 树形控件整合下拉功能菜单(tree + dropdown +input)的方法,帮助大家更好的理解和学习vue,感兴趣的朋友可以了解下
recommend-type

vue element-ui之怎么封装一个自己的组件的详解

主要介绍了vue element-ui之怎么封装一个自己的组件,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
recommend-type

Vue-cli4 配置 element-ui 按需引入操作

主要介绍了Vue-cli4 配置 element-ui 按需引入操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
recommend-type

使用vue的v-for生成table并给table加上序号的实例代码

现在有一个使用mybatis的分页插件生成的table,table中数据是通过vue获得的 , 前台显示使用&lt;tr v-for=”item&gt; 后台vue获取数据使用分页插件进行查询然后使用回调,将结果返回给vue的一个model /** * 分页控件加载 ...
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

用 Python 画一个可以动的爱心

好的,我可以帮助您使用Python来绘制一个动态的爱心。您可以使用turtle库来实现。以下是实现代码: ```python import turtle import math # 设置画布和画笔 canvas = turtle.Screen() canvas.bgcolor("black") pencil = turtle.Turtle() pencil.speed(0) pencil.color("red", "pink") pencil.pensize(3) # 定义爱心函数 def draw_love(heart_size, x_offset=0, y_offset=0):
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。