美文网首页
一个vue的可拖拽的瀑布流布局组件

一个vue的可拖拽的瀑布流布局组件

作者: AshleyLv777 | 来源:发表于2017-08-23 22:13 被阅读0次

    介绍

    vue-grid-layout是一个功能强大的瀑布流布局组件。支持用户拖拽和对改变元素大小,并提供相应的事件进行自定义操作。而且布局可以存储和再展现。

    安装

    通过NPM安装

    npm install vue-grid-layout
    

    插件应用

    这是一个使用的例子

    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":4,"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"}
        ];
        
        var GridLayout = VueGridLayout.GridLayout;
        var GridItem = VueGridLayout.GridItem;
        
        new Vue({
            el: '#app',
            components: {
                GridLayout,
                GridItem,
            },
            data: {
                layout: testLayout,
            },
        });
    
    <grid-layout
                :layout="layout"
                :col-num="12"
                :row-height="30"
                :is-draggable="true"
                :is-resizable="true"
                :vertical-compact="true"
                :margin="[10, 10]"
                :use-css-transforms="true"
        >
    
            <grid-item v-for="item in layout"
                       :x="item.x"
                       :y="item.y"
                       :w="item.w"
                       :h="item.h"
                       :i="item.i">
                {{item.i}}
            </grid-item>
        </grid-layout>
    

    插件参数

    参数 类型 默认值 说明
    autoSize Boolean true 是否根据内容确定容器的高度
    colNum Number 12 列数
    rowHeight Number 150 行高
    maxRows Number Infinity 最大的行高
    margin Array [10, 10] 两个可移动元素间的距离
    isDraggable Boolean true 是否支持推拽
    isResizable Boolean true 是否支持改变大小
    useCssTransforms Boolean true 是否使用自定义的过渡效果
    verticalCompact Boolean true 是否使用verticalCompact布局
    layout Array - 布局位置

    轮子工厂--一个分享优秀的vue,angular组件的网站

    相关文章

      网友评论

          本文标题:一个vue的可拖拽的瀑布流布局组件

          本文链接:https://www.haomeiwen.com/subject/rreglxtx.html