vue-grid-layout 中文文档

vue-grid-layout 中文文档

vue-grid-layoutgridster.jsvue2 版本的网格布局插件,类似于 windows 的磁贴功能,我们可以用它来实现工作台之类的自定义布局功能。

官方网站

https://github.com/jbaysolutions/vue-grid-layout

安装方式

npm install vue-grid-layout --save  

 yarn add vue-grid-layout

Demo下载

下载文件  打开项目后运行 npm i

导入组件

import VueGridLayout from 'vue-grid-layout';

注册组件

 export default {
       components: {
           GridLayout: VueGridLayout.GridLayout,
           GridItem: VueGridLayout.GridItem
       },
   // ... data, methods, mounted (), etc.
  }

在线试一试

grid-layout属性说明

属性名称属性说明
col-num画布占几列,默认12列
row-height每行的高度,默认150px
is-draggable是否允许拖拽布局中的单元格,默认true
is-resizable是否允许缩放布局中的单元格,默认true
max-rows定义最大行数,你把它设置成1拖拽试试就知道它的作用了
margin布局中单元格之间的间距,如果[10,10]
responsive是否是响应式布局,比如大屏下显示5列,小屏幕下将会根据屏幕大小显示多少列。默认为false
is-mirrored镜像反转,就是布局是从左到右还是从右到左
auto-size布局的容器是否自动自动大小
vertical-compact是否开启垂直压缩,设置true或false试试看
prevent-collision防止碰撞,设置为ture时,单元格只能拖动到空白处
use-css-transforms否使用CSS属性 transition-property: transform
breakpoints为响应式布局设置断点,默认为 { lg: 1200, md: 996, sm: 768, xs: 480, xxs: 0 },里面的单位为像素px
cols设置每个断点对应的列数,默认{ lg: 12, md: 10, sm: 6, xs: 4, xxs: 2 }。
use-style-cursor是否使用动态鼠标指针样式,当拖动出现卡顿时,将此值设为 false也许可以缓解布局问题。

grid-item属性说明

属性名称属性说明
i单元格的id,字符串类型
x单元格起始列
y单元格起始行
w单元格占几列
h单元格占几行
min-w单元格最小宽度占几列,缩放单元格时起作用
min-h单元格最小宽度占几行,缩放单元格时起作用
max-w单元格最大宽度占几列,缩放单元格时起作用
max-h单元格最大宽度占几行,缩放单元格时起作用
is-draggable单元格是否允许拖拽,如果为 null 取决父容器
is-resizable单元格是否允许缩放,如果为 null 取决父容器
static单元格是否是静态的,默认为false,如果是那么无法缩放、拖动、被其他元素影响
drag-ignore-fromcss 筛选器,设置那些元素无法触发拖拽事件,比如'a, button'
drag-allow-fromcss 筛选器,那些元素可以触发拖拽事件,默认为null,全部元素
resize-ignore-fromcss 筛选器,那些元素无法触发调整大小事件
Catalog
快速入门 Usage 属性列表 事件列表 外部拖入单元格 动态添加删除 防止碰撞 响应式布局 镜像反转 允许拖动 多个容器 单元格调整大小 单元格移动事件