一个类似于Gridster的栅格布局系统Vue组件

哈喽,我是老鱼,一名致力于在技术道路上的终身学习者、实践者、分享者!

Vue Grid Layout是一个类似于Gridster的栅格布局系统, 适用于Vue.js,灵感来源于React Grid Layout。

特性

  • 可拖拽

  • 可调整大小

  • 静态部件(不可拖拽、调整大小)

  • 拖拽和调整大小时进行边界检查

  • 增减部件时避免重建栅格

  • 可序列化和还原的布局

  • 自动化 RTL 支持

  • 响应式

安装

Npm

npm i vue-grid-layout

Yarn

yarn add vue-grid-layout

浏览器

<script src="vue-grid-layout.umd.min.js"></script>

使用

引入

import VueGridLayout from 'vue-grid-layout';

加入到组件中

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

数据

`var testLayout = [

{"x":0,"y":0,"w":2,"h":2,"i":"0"},

{"x":2,"y":0,"w":2,"h":4,"i":"1"},

{"x":4,"y":0,"w":2,"h":5,"i":"2"},

{"x":6,"y":0,"w":2,"h":3,"i":"3"},

{"x":8,"y":0,"w":2,"h":3,"i":"4"},

{"x":10,"y":0,"w":2,"h":3,"i":"5"},

{"x":0,"y":5,"w":2,"h":5,"i":"6"},

{"x":2,"y":5,"w":2,"h":5,"i":"7"},

{"x":4,"y":5,"w":2,"h":5,"i":"8"},

{"x":6,"y":3,"w":2,"h":4,"i":"9"},

{"x":8,"y":4,"w":2,"h":4,"i":"10"},

{"x":10,"y":4,"w":2,"h":4,"i":"11"},

{"x":0,"y":10,"w":2,"h":5,"i":"12"},

{"x":2,"y":10,"w":2,"h":5,"i":"13"},

{"x":4,"y":8,"w":2,"h":4,"i":"14"},

{"x":6,"y":8,"w":2,"h":4,"i":"15"},

{"x":8,"y":10,"w":2,"h":5,"i":"16"},

{"x":10,"y":4,"w":2,"h":2,"i":"17"},

{"x":0,"y":9,"w":2,"h":3,"i":"18"},

{"x":2,"y":6,"w":2,"h":2,"i":"19"}

];

复制代码
new Vue({
    el: '#app',
    data: {
        layout: testLayout,
    },
});`

html

复制代码
    <grid-item v-for="item in layout"
               :x="item.x"
               :y="item.y"
               :w="item.w"
               :h="item.h"
               :i="item.i"
               :key="item.i">
        {{item.i}}
    </grid-item>
</grid-layout>

Github地址:https://github.com/jbaysolutions/vue-grid-layout

API文档地址:https://jbaysolutions.github.io/vue-grid-layout/

我是老鱼,白天敲代码,晚上搞自媒体。
课程 | 陪跑 | 项目 | 副业咨询

相关推荐
开发者如是说11 分钟前
我用 Compose 写了一个 i18n 多语言管理工具
前端·后端·架构
微信api接口介绍18 分钟前
微信个人发消息api
运维·服务器·开发语言·前端·网络·微信·ipad
阿明Drift21 分钟前
从炫酷粒子星云学 Three.js:深度解析一个 15 万粒子的 GPU 动画系统
前端·three.js
凉_橙24 分钟前
移动端h5适配方案
前端
久亮哦24 分钟前
开发Electron程序
前端·javascript·electron
敲敲了个代码28 分钟前
为什么 Electron 项目推荐使用 Monorepo 架构 [特殊字符][特殊字符][特殊字符]
前端·javascript·学习·架构·electron·github
你们的前端课代表28 分钟前
前端如何优雅地“边聊边等”——用 Fetch 实现流式请求大模型
前端
王大宇_29 分钟前
React闭包陷阱
前端·javascript
A达峰绮41 分钟前
Actix-web 框架性能优化技巧深度解析
前端·性能优化·actix-web
Promise5201 小时前
用油猴脚本实现用户身份快速切换
前端·javascript