PHP8.1.21版本已发布
vue8.1.21版本已发布
jquery8.1.21版本已发布

AntDesign Vue中表格无法编辑怎么办?(记录下解决方法)

青灯夜游
青灯夜游 转载
2021-12-20 11:44:01 2699浏览

Ant Design Vue中表格无法编辑怎么办?下面Vue.js栏目给大家记录分享一下表格无法编辑的解决方法,希望对大家有所帮助!

Ant Design Vue 表格无法编辑解决方案

一个简单的需求:直接编辑表格中的内容,比如顺序号这一项

在这里插入图片描述

但始终无法编辑,查了好久终于发现问题出在表格绑定的数组 data 上,它不是响应式的

const data = [
    { key: '1', name: 'John Brown', age: 32 },
    { key: '2', name: 'Jim Green', age: 42 },
    { key: '3', name: 'Joe Black', age: 33 },
  ];

得做成响应式才行!

const data = ref([
    { key: '1', name: 'John Brown', age: 32 },
    { key: '2', name: 'Jim Green', age: 42 },
    { key: '3', name: 'Joe Black', age: 33 },
  ]);

Ant Design Vue 前面几个表格绑定的数组 data 都没有用到 ref,如果套用了这几个样例还想编辑表格的话,一定记得加上 ref

在这里插入图片描述
附上开头表格的代码,供大家参考

<template>
  <a-table
    :columns="columns"
    :data-source="data"
    bordered
    style="width: 400px"
    :pagination="false"
  >
    <template #age="{  record }">
      <a-input-number v-model:value="record.age"></a-input-number>
    </template>
  </a-table>
</template>

<script>
  import { defineComponent, ref } from 'vue';
  const columns = [
    { title: '序号', dataIndex: 'key'},
    { title: '表单名称', dataIndex: 'name' },
    { title: '顺序号', dataIndex: 'age', slots: { customRender: 'age'} },
  ];
  const data = ref([
    { key: '1', name: 'John Brown', age: 32 },
    { key: '2', name: 'Jim Green', age: 42 },
    { key: '3', name: 'Joe Black', age: 33 },
  ]);

  export default defineComponent({
    name: "FormConfiguration",
    setup() {
      return {
        columns,
        data,
      }
    }
  })
</script>

Ant Design Vue 完整版的编辑表格样例其实是用到 ref 的

在这里插入图片描述

【相关推荐:《vue.js教程》】

以上就是AntDesign Vue中表格无法编辑怎么办?(记录下解决方法)的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:csdn,如有侵犯,请联系admin@php.cn删除