vxe grid中form按钮组折叠状态下的span

UI需求查询表单和按钮始终要一排

万事第一步,看文档


因为是要设置折叠,就搜索的collapse 事件有form-collapse,很快哦 第一版就出来了

js 复制代码
formConfig: {    
    collapseStatus: collapseStatus.value,
}

{
    span: collapseSpan.value,
    align: 'right',
    collapseNode: true,
    slots: {
      default: () => {
        return (
          <>
            <ElButton type="primary" onClick={() => setSearchParams()}>
              查询
            </ElButton>
            <ElButton type="info" onClick={() => resetSearchParams()}>
              重置
            </ElButton>
          </>
        )
      }
    }
    }

const handleFormCollapse = (e) => {
  collapseStatus.value = e.status
  console.log('collapseStatus', collapseStatus.value)
  console.log('collapseSpan', collapseSpan.value)
}

const collapseSpan = computed(() => {
  return collapseStatus.value ? 4 : 24
})

log信息的无误的,collapseSpan会根据状态切换4或24,但效果并不是需求的

原因我理解是虽然collapseSpan状态切换了,但组件没有重新渲染,所以为默认的span:4。于是寻找重新渲染Form组件的API,很可惜没有找到。

有更准确的原理可以评论区回复

问题解决


既然没有API,那就通过CSS解决,继续看文档,item里还有个属性为className,参数和返回值为({ field, data }) => string

log信息如下

很好 查看到了按钮组的span,那就在这尝试修改下信息

js 复制代码
const collapseNodeSpan = ({ item }) => {
  item.span = collapseStatus.value ? 4 : 24
  return 'collapseNodeSpan'
}

效果如下

ok 实现了需求的效果

相关推荐
子兮曰2 天前
jev-ultrafast 深度解析:7 秒订机票的浏览器 Agent 是如何炼成的
前端·后端·agent
子兮曰2 天前
Jev 爆发一周:7 秒 Agent 背后的 System One 生态与三场争议
前端·后端·ai编程
前端小万2 天前
写公众号赚了 3000 块后,我做了一款叫 "一键成稿" 的软件
前端·微信小程序
爱勇宝2 天前
ZCode 开源 24 小时:一份没有历史的账本,回答不了"有没有偷代码"
前端·后端·chatglm (智谱)
三十而立洋2 天前
Cookie 详解:从产生到安全,一次讲透
前端·javascript
卡布鲁2 天前
把一个 Vite + Vue3 应用塞进 qiankun (React + Umi3) 主站:十个坑的复盘
前端·javascript·react.js
汉堡大王95272 天前
Jev:不是聊天机器人, 而是一个智能 if 语句
前端·人工智能·后端
梦想很大很大2 天前
从运行事实到回归证据:Workrun 的 Telemetry 与 Evaluation 实践
前端·人工智能·后端
计算机魔术师2 天前
Meta Muse agent 接入 Shopify 的 Shop Pay 实现代理式购物
前端
沙蒿同学2 天前
我用 Go 搭了一条 AI Agent 流水线:从 1 张商品图到一整套淘宝详情页
前端·javascript·后端