vue3点击表格某个单元格文本就切换成输入框,其他单元格不变化

html 复制代码
<el-table :data="data.tableData" height="60vh" border scrollbar-aways-on>
        <el-table-column label="序号" type="index" width="80" fixed />
        <el-table-column label="操作" width="120" fixed>
            <template #default="{ row }">
                <el-button type="danger" text @click="deleteBtn(row)" :disabled="row.status">删除</el-button>
                <el-button style="color: #3592FF" text @click="enableBtn(row)">{{ row.status ? '停用' : '启用' }}</el-button>
            </template>
        </el-table-column>
        <el-table-column prop="status" label="状态" width="120" />
        <el-table-column prop="phone" label="手机号" />
        <el-table-column prop="kanno" label="操作人" />
        <el-table-column prop="kanno" label="操作时间" />
        <el-table-column prop="kanno" label="创建人" />
        <el-table-column prop="createTime" label="创建时间" />
        <el-table-column label="姓名">
            <template #default="scope">
                <template v-if="scope.cellIndex == cellIndex && scope.$index == index">
                    <el-input v-model="scope.row.status" @blur="saveCell" />
                </template>
                <template v-else>
                    <div @click="editCell(scope, scope.$index)">{{ scope.row.status }}</div>
                </template>
            </template>
        </el-table-column>
    </el-table>
javascript 复制代码
const cellIndex = ref('')
const index = ref('')

function editCell(row, ind) {
    cellIndex.value = row.cellIndex
    index.value = ind
}
function saveCell() {
    cellIndex.value = ''
    index.value = ''
}

效果如下

点击第一行的文本

点击第二行文本

相关推荐
ljt272496066110 分钟前
Vue笔记(五)--组件进阶
前端·vue.js·笔记
不瘦80斤不改名20 分钟前
Javascript中的对象
开发语言·javascript·ecmascript
晓得迷路了23 分钟前
栗子前端技术周刊第 130 期 - Angular 22 RC、Rolldown 1.0.1、pnpm 11.2...
前端·javascript·react.js
桔筐26 分钟前
【无标题】
前端·vue.js
এ慕ོ冬℘゜27 分钟前
原生 JS 手写日期选择器|完整可复用日历组件实战
前端·javascript·css
Maimai1080827 分钟前
用 TanStack Table、React Query 和 shadcn/ui 搭一个可维护的数据表格架构
前端·javascript·react.js·ui·架构·前端框架·reactjs
蜡笔小电芯35 分钟前
【Electron】第4章—renderer.js 与页面交互逻辑
javascript·electron·交互
海上彼尚41 分钟前
Nodejs也能写Agent - 9.Mastra篇 - Mastra客户端
开发语言·前端·javascript·人工智能·node.js
Hyyy11 小时前
普通前端续命周报——第1周
前端·javascript