buildadmin:表格中实现详情按钮

其一:创建组件并在当前控制器中引入组件

<!-- 示例核心代码(1/3) -->
<!-- 详情组件在此处使用,但显示与否的判断是写在组件内的 -->
<Detail />

<!-- 引入组件 -->
import Detail from './detail.vue'

 其二:注册按钮

const optButtons: OptButton[] = defaultOptButtons(['edit', 'delete'])
放在此处之后
/**
 * 示例核心代码(2/3)
 * 表格操作按钮组 optButtons 只是个普通的数组,此处向其 push 一个 OptButton
 */
optButtons.push({
    render: 'tipButton',
    // name 是任意的
    name: 'detail',
    // title 是语言翻译 key
    title: 'treetable.detailBtnTitle',
    text: '',
    type: 'warning',
    icon: 'fa fa-search-plus icon',
    click(row, field) {
        console.info('%c-------详情按钮被点击了--------', 'color:blue')
        console.log('接受到行数据和列数据', row, field)
        console.log('%c赋值:baTable.table.extend!.showInfo = true', 'color:red')

        // 在 extend 上自定义一个变量标记详情弹窗显示状态,详情组件内以此判断显示即可!
        baTable.table.extend!.showInfo = true

        // 您也可以使用 baTable.form.operate,默认情况它有三个值`Add、Edit、空字符串`,前两个值将显示添加和编辑弹窗

        // 您也可以再来个 loading 态,然后请求详情数据等
        baTable.table.extend!.infoLoading = true
        setTimeout(() => {
            baTable.table.extend!.infoData = row
            baTable.table.extend!.infoLoading = false
        }, 1000)
    },
})

 其三:详情组件代码

<!-- 示例核心代码(3/3) -->
<script setup lang="ts">
import { inject } from 'vue'
import { timeFormat } from '/@/utils/common'
import type baTableClass from '/@/utils/baTable'

const baTable = inject('baTable') as baTableClass
</script>

<template>
    <el-dialog class="ba-operate-dialog" v-model="baTable.table.extend!.showInfo" width="50%">
        <template #header>
            <div class="title" v-drag="['.ba-operate-dialog', '.el-dialog__header']" v-zoom="'.ba-operate-dialog'">详情</div>
        </template>
        <div v-loading="baTable.table.extend!.infoLoading" class="info-box ba-markdown">
            <div v-if="baTable.table.extend!.infoData">
<!--                <div><code>baTable.table.extend!.showInfo == true</code>时,本弹窗就显示了,它是在按钮被点击时赋值的</div>-->

                <div class="mt-40">id:{{ baTable.table.extend!.infoData.id }}</div>
                <div>父级ID:{{ baTable.table.extend!.infoData.pid }}</div>
                <div>上下级:{{ baTable.table.extend!.infoData.name}}</div>
                <div>创建时间:{{ timeFormat(baTable.table.extend!.infoData.create_time) }}</div>
            </div>
        </div>
    </el-dialog>
</template>

<style scoped lang="scss">
.info-box {
    margin-top: 60px;
    div {
        width: 100%;
        text-align: center;
    }
    .mt-40 {
        margin-top: 40px;
    }
}
</style>

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
buildadmin教程是一本教授初学者如何建立和管理网站后台管理系统的教程。 该教程涵盖了从基本概念到高级技巧的所有内容,非常有助于初学者迅速入门和理解网站后台管理系统的工作原理。 在buildadmin教程,首先介绍了网站后台管理系统的基本概念和作用。它解释了后台管理系统是如何通过登录和验证来控制对网站内容的访问和修改。通过理解这一概念,读者能够更好地理解后续章节讲述的技术和方法。 接着,该教程详细介绍了常用的后台管理系统开发工具和语言,比如PHP、MySQL和HTML/CSS。它提供了简洁明了的教学示例和代码,使初学者能够快速上手并开始构建自己的后台管理系统。 在后续章节buildadmin教程阐述了如何设计和创建数据库,并将其与后台管理系统进集成。读者将学习如何创建用户表、权限表以及其他必要的数据表,以便管理用户和控制其权限。 此外,该教程还介绍了如何设计和实现用户登录和验证系统,以确保只有经过授权的用户能够访问后台管理系统。读者将学习如何使用会话和Cookie来处理用户的登录状态,并实现密码加密和解密的功能。 最后,buildadmin教程还提供了一些常见问题和解决方案,以及一些实际应用案例的示例。读者可以从学习到一些实用的技巧和建议,帮助他们更好地开发和管理自己的后台管理系统。 总之,buildadmin教程是一本对初学者非常有价值的教程,它提供了全面而详细的指导,帮助读者建立和管理网站后台管理系统。无论是对于个人网站还是企业网站的建设,该教程都是一个不可或缺的资源。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值