angular-gridster2 网格大小

angular-gridster2 grid size

我目前正在研究 angular-gridster2 的集成。目标是获得一个具有固定行高、固定列数的网格,并且应该计算大小。这是我当前的 GridsterConfig:

{
  setGridSize: true,
  margin: 5,
  displayGrid: DisplayGrid.OnDragAndResize,
  gridType: GridType.VerticalFixed,
  keepFixedHeightInMobile: true,
  fixedRowHeight: 50,
  minCols: 6,
  maxCols: 6,
  swap: true,
  pushItems: true,
  resizable: { enabled: true },
  draggable: {enabled: true },
  enableEmptyCellDrop: true,
}

使用此配置,网格高度按预期计算(完美)。问题是 window 调整大小后宽度保持不变。当我将 setGridSize 属性 设置为 false 时,宽度计算按预期工作,但高度始终是边距的 2 倍。

我现在的解决方案是我创建了一个父容器 div,我在其中根据网格行设置高度(使用行 * (fixedRowHeight + 边距计算高度)。

您可以简单地使用 gridster 内置选项来完成此操作,例如:

vm.options = 
{
    minCols: 7,
    maxCols: 7,
    minRows: 4,
    maxRows: 4,
    maxItemCols: 50,
    minItemCols: 1,
    maxItemRows: 50,
    minItemRows: 1,
    maxItemArea: 2500,
    minItemArea: 1,
    defaultItemCols: 1,
    defaultItemRows: 1,
    setGridSize: true,
    fixedColWidth: 250,
    fixedRowHeight: 250,
};

供参考:

https://github.com/tiberiuzuld/angular-gridster2/tree/1.x

我使用了以下配置并且对我有用:

    itemChangeCallback: ((item: GridsterItem) => {
         // Your content here
      }),
      itemInitCallback: ((item: GridsterItem, itemComponent: GridsterItemComponentInterface) => {
         // Your content here
      }),
      setGridSize: true,
      gridType: 'verticalFixed',
      fixedRowHeight: 237,
      minRows: 2,
      maxRows: 100,
      minItemRows: 2,
      maxItemRows: 2,
      defaultItemRows: 1,
      minCols: 12,
      maxCols: 12,
      maxItemCols: 12,
      minItemCols: 1,
      defaultItemCols: 1,
      maxItemArea: 2500,
      minItemArea: 1,
      swap: true,
      displayGrid: 'onDrag&Resize',
      compactType: 'compactUp', // 'compactUp&Left',compactLeft&Up'
      pushItems: true,
      resizable: { enabled: true },
      draggable: {
        enabled: true
      }

希望对您有所帮助