使用vue动态在列表中添加或者删除某一行

**

使用vue动态在列表中添加或者删除某一行

**

先看一下展示的效果:

好了上代码:

样式界面:

csharp 复制代码
<template>
  <div class="container">
    <h4 style="margin-left: 20px;">线路停靠站站点</h4>
    <el-button
      type="primary"
      size="mini"
      icon="el-icon-circle-plus-outline"
      @click="addRow"
      style="margin-bottom: 20px;margin-left: 20px;"
      >新增一行</el-button
    >
    <el-table :data="tableData" border>
      <el-table-column
        label="序号"
        align="center"
        type="index"
        fixed
        sortable
        min-width="80"
      />

      <el-table-column label="站点名称" prop="zdmc" align="center" >
        <template slot-scope="scope">
          <div class="flex align-center">
            <el-input v-model="scope.row.zdmc" />
          </div>
        </template>
      </el-table-column>
      <el-table-column label="停靠时间" prop="zdsj" align="center" >
        <template slot-scope="scope">
          <div class="flex align-center">
            <!-- <el-input v-model="scope.row.colcumn2" /> -->
            <el-time-picker  v-model="scope.row.zdsj"  class="date-box" format="HH:mm"  value-format="HH:mm"></el-time-picker>
          </div>
        </template>
      </el-table-column>
      <el-table-column label="是否启用" prop="isEnable" align="center" >
        <template slot-scope="scope">
          <div class="flex align-center">
            <!-- <el-input v-model="scope.row.colcumn" /> -->
            <el-radio v-model="scope.row.isEnable" label="1">启用</el-radio>
            <el-radio v-model="scope.row.isEnable" label="-1">不启用</el-radio>
          </div>
        </template>
      </el-table-column>
      <el-table-column label="操作" align="center">
        <template slot-scope="scope">
          <el-button
            type="success"
            icon="el-icon-plus"
            circle
            size="small"
            @click="addRowIndex(scope.$index)"
          ></el-button>
          <el-button
            type="danger"
            icon="el-icon-minus"
            circle
            size="small"
            @click="delRow(scope.$index)"
          ></el-button>
        </template>
      </el-table-column>
    </el-table>
    <div class="form_block" style="text-align: center;">
      <el-button @click="cancel" v-if="!disabled">取消</el-button>
      <el-button type="primary" @click="handleSubmit" v-if="!disabled">提交</el-button>
    </div>
  </div>
</template>

js代码

csharp 复制代码
 // 增加一行
        addRow() {
      const row = {
        colcumn1: "",
        colcumn2: "",
        isEnable:"1",
      };
      this.tableData.push(row);
    },
    // 删除指定行
    delRow(index) {
      this.tableData.splice(index, 1);
    },
    // 指定位置插入行
    addRowIndex(index) {
      const row = {
        colcumn1: "",
        colcumn2: "",
        isEnable:"1",
      };
      this.tableData.splice(index + 1, 0, row);
    },

记得在 return 的data中定义数据 tableData: \[\],

完成!!

相关推荐
benbenAItalk6 小时前
数字人口播视频的批量生产实践:素材规范、任务编排与质量验收
java·前端·音视频
2601_962885726 小时前
如何用 Python 扫描 A 股跳空缺口并统计缺口回补概率?
java·前端·python
西瓜太郎12347 小时前
Claude Code、Codex CLI、Gemini CLI 能否共用一枚 Key?先看协议选择矩阵
前端·api 网关·claude code·gemini cli·codex cli
多加点辣也没关系7 小时前
JavaScript|第31章:表单与控件
开发语言·javascript·ecmascript
陈随易9 小时前
在Finch用了62亿词元,我认为这是新一代Agent工具之神
前端·人工智能·后端
水域安全老周9 小时前
水趣钓鱼救生衣专利拆解:两级锁紧如何解决落水人衣分离
java·前端·网络
计算机魔术师9 小时前
Anthropic CEO突然喊踩刹车,OpenAI罕见力挺:AI这辆车不能只踩油门了
前端
wing9810 小时前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端
Highcharts.js10 小时前
常见报错排雷指南2:导出失败的官方解法
javascript·react.js·ecmascript·highcharts·可视化图表·导出模块失败·导出服务
EatFan10 小时前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app