Angular Gridster2在切换材质侧栏时网格未调整项目大小

Angular Gridster2在切换材质侧栏时网格未调整项目大小,angular,angular-gridster2,Angular,Angular Gridster2,我有一个网格,使用Gridster2从材质侧边栏的一项导航。侧边栏是打开的,但是,每当我切换侧边栏(隐藏它)时,gridster都不会调整项目的大小,直到我强制刷新。有没有办法让它“自动”刷新 要复制它,只需转到并检查元素并删除及其内容。在更改网格类型之前,它不会全屏显示 参考:网格将仅在窗口调整大小时自动调整大小。在触发调整大小事件之前,无法跟踪容器大小的更改 您需要在需要的地方触发调整大小事件 this.options.api.resize() 请参阅。我通过以下两个步骤解决了问题: 步骤

我有一个网格,使用Gridster2从材质侧边栏的一项导航。侧边栏是打开的,但是,每当我切换侧边栏(隐藏它)时,gridster都不会调整项目的大小,直到我强制刷新。有没有办法让它“自动”刷新

要复制它,只需转到并检查元素并删除
及其内容。在更改网格类型之前,它不会全屏显示


参考:

网格将仅在窗口调整大小时自动调整大小。在触发调整大小事件之前,无法跟踪容器大小的更改

您需要在需要的地方触发调整大小事件

this.options.api.resize()

请参阅。

我通过以下两个步骤解决了问题:

  • 步骤1:
    中添加
    [ngStyle]
    。它为
    网格项添加了响应性:

    <gridster [options]="options" [ngStyle]="{'width': toggled ? '100%' : 'auto'}">
       <gridster-item [item]="item" *ngFor="let item of dashboard">
          <!-- your content here -->
       </gridster-item>
    </gridster>
    
    其中是由angular-gridster2提供的内置
    gridEvent
    回调方法


  • 请说明我们可以在哪里触发调整大小方法。嗨,我在侧边栏上尝试了你的选项切换gridster的大小调整完美,但窗口大小调整不再发生。
    itemInitCallback: ((item: GridsterItem, itemComponent: GridsterItemComponentInterface) => {
        window.dispatchEvent(new Event('resize'));  // to reisize respective charts 
    })