<template>
  <el-table :data="tableData" style="width: 100%">
    <el-table-column prop="date" label="日期" width="180"></el-table-column>
    <el-table-column prop="name" label="姓名" width="180"></el-table-column>
    <el-table-column prop="address" label="地址"></el-table-column>
    <el-table-column label="操作" width="150">
      <template slot-scope="scope">
        <el-button @click="handleEdit(scope.$index, scope.row)" size="mini">编辑</el-button>
        <el-button @click="handleDelete(scope.$index, scope.row)" size="mini" type="danger">删除</el-button>
      </template>
    </el-table-column>
  </el-table>
</template>
 
<script>
export default {
  data() {
    return {
      tableData: []
    }
  },
  created() {
    this.fetchData();
  },
  methods: {
    fetchData() {
      // 模拟数据请求
      this.tableData = [
        // ... 填充数据
      ];
    },
    handleEdit(index, row) {
      // 页面跳转,这里只是模拟,实际应用需要使用编程式导航或者<router-link>
      console.log('编辑', index, row);
      // this.$router.push({ path: `/edit/${row.id}` });
    },
    handleDelete(index, row) {
      // 模拟删除操作
      console.log('删除', index, row);
      // 实际应用需要发起数据请求到后端删除数据
      // this.tableData.splice(index, 1);
    }
  }
}
</script>这个代码实例展示了如何在Vue组件中使用ElementUI的<el-table>组件来展示数据,并使用<el-button>实现简单的编辑和删除功能。同时,展示了如何在Vue组件的created生命周期钩子中发起数据请求,并在methods中定义处理编辑和删除按钮点击事件的方法。这个例子是基于前端的模拟数据请求和操作,实际应用中需要与后端服务配合,并使用编程式导航或者<router-link>实现页面跳转。