在 gridstack.jsAngular 2+中重置会在下次调整大小或拖动时保留 HTML 属性的旧值,导致问题

问题描述

我的 angular 7 应用程序使用 gridstack.js v^4.2.5。我可以通过

生成网格

在 GridstackDemoComponent.ts 中

grid: GridStack;
ngOnInit() {
        this.grid = GridStack.init();
}

并在

    <div class="grid-stack">
      <div
        class="grid-stack-item"
        gs-id="grid-1"
        id="grid-1"
      >
      SOME DATA HERE/CHART COMPONENTS
      </div>
    </div>

我有 6 个这样的网格项目,用于 6 个不同的图表。这非常有效。 现在在调整大小或拖动其他地方后重置网格我正在使用以下功能

  resetChartConfig() {
    document.getElementById("grid-1").setAttribute("gs-min-w","4");
    document.getElementById("grid-1").setAttribute("gs-min-h","2");
    document.getElementById("grid-1").setAttribute("gs-x","0");
    document.getElementById("grid-1").setAttribute("gs-y","3");
    document.getElementById("grid-1").setAttribute("gs-w","8");
    document.getElementById("grid-1").setAttribute("gs-h","3");
    ...
  }

此重置功能按预期工作,但在此之后,当我尝试调整大小或拖动任何网格项时,它会自动占用在重置认值之前设置的旧属性值。

例如。 说

  1. 第 1 步:grid-1 (item1) 我调整为 gs-w = 12 ,gs-h = 6 并拖动 位置到 gs-x = 3,gs-y = 3
  2. 第 2 步:点击重置按钮 重置为认值。
  3. 第 3 步:尝试调整或拖动 grid-2 (item2)。

此时 grid-1 将自动采用步骤 1 中的值。

我无法清除旧的 HTML 属性以某种方式保留在 DOM 中。

有什么办法可以实现这个功能吗?

提前感谢您的帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)