Vue3与Element-plus配合 直接修改表格中的一项数据——控制输入框的显示与隐藏

利用控制与隐藏输入框,直接修改表格中的每一项数据。

html 复制代码
<!-- 表格模块 -->
<div>
    <el-table :data="tablelist" style="width: 100%">
        <el-table-column align="center" prop="deposit" label="接单押金">
            <template #default="{ row, $index }">
                <span v-if="!showEdit[$index]">{{ row.deposit }}</span>
                <div v-else style="margin-left: 200px; width: 100px">
                    <el-input v-model="row.deposit" placeholder="请输入分类名"></el-input>
                </div> </template
        ></el-table-column>
        <el-table-column align="center" label="操作">
            <template #default="{ row, $index }">
                <!-- 编辑 -->
                <el-button
                    v-if="!showEdit[$index]"
                    type="primary"
                    @click="Edit(row, $index)"
                    plain
                    >编辑</el-button
                >
                <!-- 编辑确认 -->
                <el-button v-else type="primary" @click="sure(row, $index)" plain
                    >确认</el-button
                >
            </template>
        </el-table-column>
    </el-table>
</div>
javascript 复制代码
// #region *****************点击编辑控制输入框显示与关闭模块****************
const showEdit = ref<boolean[]>([])
// 编辑处理
const Edit = (row: any, index: any) => {
    //vue3使用数组添加数据
    showEdit.value[index] = true
}
// #endregion
// #region *****************确认编辑模块****************
const sure = async (row: any, index: any) => {
    console.log(row)
    showEdit.value[index] = false
    // 表单预校验
    // await form.value.validate()
    // 发起修改请求
    // await updatePageClassServe(row).then(() => {
    //     ElMessage.success('修改成功!')
    //     showEdit.value = []
    // })
    // 重新获取分类数据,渲染页面
    // getChannelList()
}
// #endregion
相关推荐
Mintopia12 分钟前
🚀 一文看懂 “Next.js 全栈 + 微服务 + GraphQL” 的整体样貌
前端·javascript·全栈
Mintopia15 分钟前
🧬 医疗Web场景下,AIGC的辅助诊断技术边界与伦理
前端·javascript·aigc
半桶水专家19 分钟前
父子组件通信详解
开发语言·前端·javascript
Watermelo61722 分钟前
从vw/h到clamp(),前端响应式设计的痛点与进化
前端·javascript·css·算法·css3·用户界面·用户体验
Moment28 分钟前
快到  2026  年了:为什么我们还在争论  CSS 和 Tailwind?
前端·javascript·css
梵得儿SHI39 分钟前
Vue 核心语法详解:模板语法中的绑定表达式与过滤器(附 Vue3 替代方案)
前端·javascript·vue.js·插值语法·vue模板语法·绑定表达式·过滤器机制
江城开朗的豌豆41 分钟前
TypeScript枚举:让你的代码更有"选择权"
前端·javascript
江城开朗的豌豆1 小时前
TypeScript接口:打造你的代码“契约”之道
前端·javascript
江城开朗的豌豆1 小时前
TypeScript类:面向对象编程的超级武器
前端·javascript
鹏多多1 小时前
React项目使用useMemo优化性能指南和应用场景
前端·javascript·react.js