You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Dropdown手风琴循环渲染后折叠交互失效问题咨询

问题成因
  • DOM结构存在语法错误:循环渲染的代码中,<p className="is-small has-text-primary has-text-weight-semibold">Tag</p> 下方存在多余的无效代码 </div>*/},导致标签闭合层级错乱,折叠组件依赖的DOM结构被破坏,交互逻辑无法正常触发。
  • 组件初始化时机错误:该手风琴组件需要对应DOM元素完全渲染到页面后,才能成功绑定交互事件。硬编码版本的DOM在页面首次渲染时就已存在,初始化逻辑可以正常绑定;但动态循环生成的DOM依赖trainingData的加载,如果初始化仍在组件首次挂载时执行,此时循环元素还没渲染到页面,事件绑定会全部失效,导致无法折叠。
  • 缺少默认折叠类:折叠容器默认不添加is-collapsed类时,就是保持展开状态,符合你遇到的默认展开无法关闭的表现。
修复方案
  1. 先删除循环代码里的冗余无效代码</div>*/},对齐硬编码版本的DOM结构,确保所有标签的闭合层级正确。
  2. 调整折叠组件的初始化时机,保证在trainingData加载完成、动态DOM渲染完毕后再执行初始化。如果是React项目,可把初始化逻辑放在useEffect钩子中,同时把trainingData加入依赖数组,参考代码:
useEffect(() => {
  // 确保数据加载完成、父容器DOM存在后再执行初始化
  if(trainingData.length && collapsiblesRef.current) {
    // 此处填写你原本的折叠组件初始化逻辑
  }
}, [trainingData])
  1. 如果需要条目默认关闭,给折叠容器的className追加is-collapsed:
<div 
  id={`collapsible-card-${i}`} 
  className="is-collapsible is-collapsed" 
  data-parent={`accordion_first`}
>
  1. 检查属性关联是否正确:确保触发折叠的a标签的href值和对应折叠容器的id完全匹配,折叠容器的data-parent值和外层父容器的id一致,无拼写错误。

内容的提问来源于stack exchange,提问作者Mr. Hankey

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 05:15:02