vue3 element-plus 实现表格数据更改功能详细步骤

 更新时间:2023年07月22日 14:48:49   作者:无妄的罪  
这篇文章主要介绍了vue3 element-plus实现表格数据更改功能,本文分步骤结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

在 vue3 中使用 element-plus 实现表格数据更改功能,可以通过以下步骤实现:

1.导入 element-plus 的 Table、Form 和 Input 组件,并在组件中引入表格数据:

<template>
  <div>
    <el-table :data="tableData">
      <el-table-column prop="name" label="Name"></el-table-column>
      <el-table-column prop="age" label="Age"></el-table-column>
      <el-table-column prop="address" label="Address"></el-table-column>
      <el-table-column>
        <template #default="{row}">
          <el-button @click="editRow(row)">Edit</el-button>
        </template>
      </el-table-column>
    </el-table>
    <el-dialog :visible.sync="dialogVisible">
      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
        <el-form-item label="Name" prop="name">
          <el-input v-model="form.name"></el-input>
        </el-form-item>
        <el-form-item label="Age" prop="age">
          <el-input v-model.number="form.age"></el-input>
        </el-form-item>
        <el-form-item label="Address" prop="address">
          <el-input v-model="form.address"></el-input>
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button @click="dialogVisible = false">Cancel</el-button>
        <el-button type="primary" @click="submitForm">Save</el-button>
      </div>
    </el-dialog>
  </div>
</template>
<script>
import { ref } from 'vue';
import { ElTable, ElTableColumn, ElButton, ElDialog, ElForm, ElFormItem, ElInput } from 'element-plus';
export default {
  components: {
    ElTable,
    ElTableColumn,
    ElButton,
    ElDialog,
    ElForm,
    ElFormItem,
    ElInput,
  },
  setup() {
    const tableData = ref([
      {
        name: 'John',
        age: 30,
        address: 'New York',
      },
      {
        name: 'Jane',
        age: 25,
        address: 'San Francisco',
      },
      {
        name: 'Bob',
        age: 40,
        address: 'Dallas',
      },
    ]);
    const form = ref({});
    const dialogVisible = ref(false);
    const rules = {
      name: [
        { required: true, message: 'Please input name', trigger: 'blur' },
      ],
      age: [
        { required: true, message: 'Please input age', trigger: 'blur' },
        { type: 'number', message: 'Age must be a number', trigger: 'blur' },
      ],
      address: [
        { required: true, message: 'Please input address', trigger: 'blur' },
      ],
    };
    const editRow = (row) => {
      form.value = { ...row };
      dialogVisible.value = true;
    };
    const submitForm = () => {
      const formRef = this.$refs.form;
      formRef.validate((valid) => {
        if (valid) {
          const dataIndex = tableData.value.indexOf(form.value);
          const tableDataCopy = [...tableData.value];
          tableDataCopy.splice(dataIndex, 1, form.value);
          tableData.value = tableDataCopy;
          dialogVisible.value = false;
        }
      });
    };
    return {
      tableData,
      form,
      dialogVisible,
      rules,
      editRow,
      submitForm,
    };
  },
};
</script>
  • 在表格中添加一个“编辑”按钮,点击该按钮会弹出一个对话框,用于修改表格行的数据。
  • 在对话框中添加一个表单,用于输入修改后的数据。
  • 在对话框的“保存”按钮上绑定一个 submitForm 方法,用于提交表单数据。在 submitForm 方法中,可以先对输入的数据进行验证,如果验证通过,则将修改后的数据更新到表格中,同时关闭对话框。

以上就是使用 element-plus 实现表格数据更改功能的全部步骤。

到此这篇关于vue3 element-plus 实现表格数据更改功能的文章就介绍到这了,更多相关vue3 element-plus 表格数据更改内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue接入下载文件接口问题

    vue接入下载文件接口问题

    这篇文章主要介绍了vue接入下载文件接口问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-09-09
  • Vue.js中Props数据未响应式传递的问题及解决过程

    Vue.js中Props数据未响应式传递的问题及解决过程

    Vue.js中Props数据未响应式传递的原因及解决方法,避免直接修改Props数据,正确使用计算属性,正确处理嵌套Props数据,使用清晰的事件命名
    2025-11-11
  • Vue如何设置button的disable属性

    Vue如何设置button的disable属性

    这篇文章主要介绍了Vue如何设置button的disable属性,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • 浅谈Vue数据响应

    浅谈Vue数据响应

    这篇文章主要介绍了浅谈Vue数据响应,Vue的数据响应主要是依赖了Object.defineProperty(),下面就具体来介绍一下如何实现数据响应
    2018-11-11
  • vue3实现多条件搜索功能的示例代码

    vue3实现多条件搜索功能的示例代码

    搜索功能在后台管理页面中非常常见,这篇文章就着重讲一下vue3-admin-element框架中如何实现一个顶部多条件搜索功能,感兴趣的小伙伴可以了解一下
    2023-08-08
  • vue 动态改变静态图片以及请求网络图片的实现方法

    vue 动态改变静态图片以及请求网络图片的实现方法

    下面小编就为大家分享一篇vue 动态改变静态图片以及请求网络图片的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-02-02
  • Vue使用NProgress实现页面顶部的进度条显示效果

    Vue使用NProgress实现页面顶部的进度条显示效果

    这篇文章主要介绍了vue Nprogress页面顶部进度条功能实现,NProgress是页面跳转是出现在浏览器顶部的进度条,本文通过实例代码给大家讲解,需要的朋友可以参考下
    2022-12-12
  • vue使用ECharts实现折线图和饼图

    vue使用ECharts实现折线图和饼图

    这篇文章主要为大家详细介绍了vue使用ECharts实现折线图和饼图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09
  • Vuex Action的 { commit }的写法教程

    Vuex Action的 { commit }的写法教程

    实践中,我们会经常用到 ES2015 的参数解构来简化代码(特别是我们需要调用commit很多次的时候,{commit} 写法是解构后得到的,这篇文章主要介绍了Vuex Action的{ commit }的写法,需要的朋友可以参考下
    2023-10-10
  • dataV大屏在vue中的使用方式

    dataV大屏在vue中的使用方式

    这篇文章主要介绍了dataV大屏在vue中的使用方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04

最新评论