在使用Grafana的过程中,发现Grafana关于视图页面中每一个面板都可拖拽,可随意放大放小,体验非常棒,F12看了Grafana的代码,看打包后的代码很像react,进一步css,看到有grid layout的字眼,然后尝试去搜了下有没有这方面的组件,一搜果然是有这样的组件的。首先看到的是react版本的组件,然后搜了下也有vue相关的。 以前也见过jquery的可拖拽组件demo,但是整体上感觉不如grid-layout优秀。

【】 VUE Grid Layout.

【】React Grid Layout

【】jQuery响应式可拖拽的元素组件网格布局插件

每个组件在GitHub上的介绍还是比较清晰易懂,项目中主要用到了vue-grid-layout组件,下面简单介绍下。

执行如下命令安装

npm install vue-grid-layout --save
然后新增一个grid_layout.vue文件 <template>
<div>
<grid-layout
:is-draggable="true"
:is-resizable="true"
:is-mirrored="false"
:layoutList="testLayout">
</grid-layout>
</div>
</template> <script>
import gridLayout from './../comm/grid_layout' export default {
data() {
return {
testLayout: [
{"x": , "y": , "w": , "h": , "i": ""},
{"x": , "y": , "w": , "h": , "i": ""},
{"x": , "y": , "w": , "h": , "i": ""},
{"x": , "y": , "w": , "h": , "i": ""},
{"x": , "y": , "w": , "h": , "i": ""},
{"x": , "y": , "w": , "h": , "i": ""},
{"x": , "y": , "w": , "h": , "i": ""},
{"x": , "y": , "w": , "h": , "i": ""}
]
}
},
components: {
gridLayout
},
}
</script> <style scoped>
</style>
is-draggable 表示是否可拖拽,设置为true,说明是可以随意拖拽的
is-resizable 表示是否可缩放,设置为ture,说明可以通过鼠标调整每一区域的大小
layoutList   是绑定的数据实体,用来标识区域大小的 layoutList是一个对象数据,每一个对象如下
{"x": , "y": , "w": , "h": , "i": ""}
其中:
x 标识该区域左上角点的x坐标
y 标识该区域左上角点的y坐标
w 是宽度
h 是高度
i 是唯一标示,表示必须唯一,且不同,不然,你会发现改变大小的时候,所有的都会被改变。。。
---------------------
作者:凉茶冰
来源:CSDN
原文:https://blog.csdn.net/liangcha007/article/details/88963551
版权声明:本文为博主原创文章,转载请附上博文链接!

Vue-Grid-Layout分享一款好用的可拖拽组件的更多相关文章

  1. Vue.Draggable:基于 Sortable.js 的 Vue 拖拽组件使用中遇到的问题

    Sortable.js 介绍 https://segmentfault.com/a/1190000008209715 项目中遇到的问题: A - 我需要在项目的拖拽组件中,使用背景 1 - 想到的第一 ...

  2. vue拖拽组件开发

    vue拖拽组件开发 创建临时vue项目 先查看node和npm版本,怎么安装就不多多bb了 再安装vue-cli npm install vue-cli -g //全局安装 vue-cli 检测是否安 ...

  3. Vue 可拖拽组件 Vue Smooth DnD 详解和应用演示

    本文发布自 https://www.cnblogs.com/wenruo/p/15061907.html 转载请注明出处. 简介和 Demo 展示 最近需要有个拖拽列表的需求,发现一个简单好用的 Vu ...

  4. Vue拖拽组件

    vue开发公众号项目,***产品需要添加一个新的功能.拖拽功能.一听简单.百度上轮子挺多,直接拉一个过来用着就行.然鹅...兴奋之余,却失望至极.东西很多,没有一个能使得.你让我失望,那我就让你绝望. ...

  5. Vue 拖拽组件 vuedraggable 和 vue-dragging

    一.描述 之前用 vue 写过一个在线的多二维码生成服务,体验地址:https://postbird.gitee.io/vue-online-qrcode/ 后面发现二维码多了之后有时候想要排序,需要 ...

  6. vue实现拖拽组件

    可以拖拽,靠边停靠,效果图如下 代码如下: 注意:代码中使用的图片未上传 DragAndDrop组件: <template> <div class="drag" ...

  7. vue2-dragula vue拖拽组件

    https://github.com/kristianmandrup/vue2-dragula git 地址 https://github.com/kristianmandrup/vue2-dragu ...

  8. vue在移动端使用alloyfinger手势库操作图片拖拽、缩放

    最近开发一个活动需要在手机上给上传的头像加上边框.装饰,需要拖拽.手势缩放边框下的头像图片,因为是vue项目,开始尝试了vue-drag-resize这个组件,对图片拖拽支持很完美,但是无法手势缩放, ...

  9. vue列表拖拽组件 vue-dragging

    安装 $ npm install awe-dnd --save 应用 在main.js中,通过Vue.use导入插件 import VueDND from 'awe-dnd' Vue.use(VueD ...

随机推荐

  1. thrift 的一些相关知识

    thrift是一个很好用的跨语言的rpc框架. 但是其也有一些需要注意的问题: 第一: 发现其对于类型检查没有那么严格:    最近工作中发现是可以把一个int类型直接付给string,而没有任何wa ...

  2. 试探回溯法(backtracking)

    一.八皇后问题 国际象棋中皇后的势力范围覆盖其所在的水平线.垂直线以及两条对角线.现考查如下问题:在n*n的棋盘上放置n个皇后,如何使得她们彼此互不攻击,此时称她们构成一个可行的棋局.对于任何整数n ...

  3. ubuntu 16.04 pecl 不能安裝 mcrypt

    vagrant@ubuntu-xenial:/etc/apt$ sudo pecl install mcrypt-1.0.1 downloading mcrypt-1.0.1.tgz ... Star ...

  4. CSS选择器,层叠

    CSS选择器 .class .intro 选择 class="intro" 的所有元素. 1 #id #firstname 选择 id="firstname" ...

  5. HttpUrlConnection类基本使用

    这个类用来模拟浏览器向服务器发送请求和接收响应 注意: HttpUrlConnection对象简称huc对象 1)获取huc对象向url构造中传递url字符串,并调用openconnection方法即 ...

  6. wpf 绑定除数据上下文外的属性

    例如: listview 绑定了一个windows.datacontext.一个集合,那么其中一个item想绑定windows.datacontext.A属性怎么办: 通过查找祖先的方法:

  7. Oozie框架介绍

    Oozie框架: 1.Oozie英文翻译:驯象人 2.Oozie简介 一个基于工作流引擎的开源框架,由Cloudera公司贡献给Apache,提供对Hadoop Mapreduce.Pig Jobs的 ...

  8. NX二次开发-UFUN判断文件是否存在UF_CFI_ask_file_exist

    #include <uf.h> #include <uf_ui.h> #include <uf_cfi.h> UF_initialize(); //判断文件是否存在 ...

  9. NXOpenC#_Training_1(cn)【转载】

  10. 配置Tomcat-8.5 JVM内存参数

    配置Tomcat-8.5 JVM内存参数 apache-tomcat-8.5与之前的版本存在些许差异,配置方式有所改变,并且针对JVM一些参数不再支持.故本文档主要简介一下如何在apache-tomc ...