vue draggable resizable 实现可拖拽缩放的组件功能


Posted in Javascript onJuly 15, 2019

虽然之前适配过旧版组件,但是因为2.0版本原作者对代码进行了重构,原来修改的代码照搬是不可能的了。

所以也就一直没有将 冲突检测 以及 吸附对齐 功能适配到2.0版本,最近正好有时间就适配一下。

新增特征

  • 冲突检测
  • 吸附对齐
  • 默认样式优化

功能预览

vue draggable resizable 实现可拖拽缩放的组件功能

项目地址

github.com/gorkys/vue-…

如果喜欢该项目,欢迎 Star

新增Props

isConflictCheck

Type: Boolean

Required: false

Default: false

定义组件是否开启冲突检测。

<vue-draggable-resizable :is-conflict-check="true">

snap

Type: Boolean

Required: false

Default: false

定义组件是否开启元素对齐。

<vue-draggable-resizable :snap="true">

snapTolerance

Type: Number

Required: false

Default: 5

当调用 snap 时,定义组件与元素之间的对齐距离,以像素(px)为单位。

<vue-draggable-resizable :snap="true" :snap-tolerance="20">

其它属性请参考 vue-draggable-resizable 官方文档

安装使用

$ npm install --save vue-draggable-resizable-gorkys

全局注册组件

//main.js
import Vue from 'vue'
import vdr from 'vue-draggable-resizable-gorkys'

// 导入默认样式
import 'vue-draggable-resizable-gorkys/dist/VueDraggableResizable.css'
Vue.component('vdr', vdr)

局部注册组件

<template>
 <div style="height: 500px; width: 500px; border: 1px solid red; position: relative;">
  <vdr :w="100" :h="100" v-on:dragging="onDrag" v-on:resizing="onResize" :parent="true">
   <p>Hello! I'm a flexible component. You can drag me around and you can resize me.<br>
   X: {{ x }} / Y: {{ y }} - Width: {{ width }} / Height: {{ height }}</p>
  </vdr>
  <vdr
   :w="200"
   :h="200"
   :parent="true"
   :debug="false"
   :min-width="200"
   :min-height="200"
   :isConflictCheck="true"
   :snap="true"
   :snapTolerance="20"
  >
  </vdr>
 </div>
</template>

<script>
import vdr from 'vue-draggable-resizable-gorkys'
import 'vue-draggable-resizable-gorkys/dist/VueDraggableResizable.css'
export default {
 components: {vdr},
 data: function () {
  return {
   width: 0,
   height: 0,
   x: 0,
   y: 0
  }
 },
 methods: {
  onResize: function (x, y, width, height) {
   this.x = x
   this.y = y
   this.width = width
   this.height = height
  },
  onDrag: function (x, y) {
   this.x = x
   this.y = y
  }
 }
}
</script>

总结

以上所述是小编给大家介绍的vue draggable resizable 实现可拖拽缩放的组件功能 ,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
往光标所在位置插入值的js代码
Sep 22 Javascript
js数组去重的常用方法总结
Jan 24 Javascript
javascript实现无限级select联动菜单
Jan 02 Javascript
jquery实现的动态回到顶部特效代码
Oct 28 Javascript
javascript实现仿百度图片的瀑布流加载效果
Apr 20 Javascript
网页前端登录js按Enter回车键实现登陆的两种方法
May 10 Javascript
jQuery中设置form表单中action值的实现方法
May 25 Javascript
AngularJs Forms详解及简单示例
Sep 01 Javascript
jQuery实现鼠标选中文字后弹出提示窗口效果【附demo源码】
Sep 05 Javascript
Angular中实现树形结构视图实例代码
May 05 Javascript
bootstrap响应式工具使用详解
Nov 29 Javascript
JavaScript中call和apply方法的区别实例分析
Aug 03 Javascript
微信小程序如何使用canvas二维码保存至手机相册
Jul 15 #Javascript
如何给element添加一个抽屉组件的方法步骤
Jul 14 #Javascript
详解vuex的简单todolist例子
Jul 14 #Javascript
改进 JavaScript 和 Rust 的互操作性并深入认识 wasm-bindgen 组件
Jul 13 #Javascript
微信小程序解析富文本过程详解
Jul 13 #Javascript
微信小程序wx.navigateTo中events属性实现页面间通信传值,数据同步
Jul 13 #Javascript
微信小程序Echarts覆盖正常组件问题解决
Jul 13 #Javascript
You might like
删除及到期域名的查看(抢域名必备哦)
2008/05/14 PHP
使用PHP编写的SVN类
2013/07/18 PHP
PHP SPL标准库中的常用函数介绍
2015/05/11 PHP
PHP正则表达式之捕获组与非捕获组
2015/11/06 PHP
PHP实现找出链表中环的入口节点
2018/01/16 PHP
PHP中使用mpdf 导出PDF文件的实现方法
2018/10/22 PHP
Laravel框架集成UEditor编辑器的方法图文与实例详解
2019/04/17 PHP
Aster vs KG BO3 第一场2.18
2021/03/10 DOTA
js中匿名函数的N种写法
2010/09/08 Javascript
基于jquery跨浏览器显示的file上传控件
2011/10/24 Javascript
jQuery实现用户注册的表单验证示例
2013/08/28 Javascript
图片动画横条广告带上下滚动的JS代码
2013/10/25 Javascript
Jquery对数组的操作技巧整理
2014/03/25 Javascript
Jquery中find与each方法用法实例
2015/02/04 Javascript
JQuery 的跨域方法推荐_可跨任何网站
2016/05/18 Javascript
easyui中combotree循环获取父节点至根节点并输出路径实现方法
2016/11/10 Javascript
vue-dialog的弹出层组件
2020/05/25 Javascript
jQuery Validate插件ajax方式验证输入值的实例
2017/12/21 jQuery
解决vue中el-tab-pane切换的问题
2020/07/19 Javascript
[52:44]VGJ.T vs infamous Supermajor小组赛D组败者组第一轮 BO3 第一场 6.3
2018/06/04 DOTA
Python实现pdf文档转txt的方法示例
2018/01/19 Python
详解python中的装饰器
2018/07/10 Python
python之PyQt按钮右键菜单功能的实现代码
2019/08/17 Python
python 深度学习中的4种激活函数
2020/09/18 Python
html5使用canvas实现图片下载功能的示例代码
2017/08/26 HTML / CSS
英国评分最高的女性剃须刀订阅盒:FFS Beauty
2018/01/25 全球购物
汉森冲浪板:Hansen Surfboards
2018/05/19 全球购物
澳大利亚最受欢迎的美发用品目的地:AMR
2019/08/28 全球购物
Java语言的优势
2015/01/10 面试题
大学四年规划书范文
2013/12/27 职场文书
纪念九一八事变演讲稿:牢记九一八,屈辱怎能忘
2014/09/14 职场文书
施工安全协议书范本
2014/09/26 职场文书
培训师岗位职责
2015/02/14 职场文书
逃课检讨书范文
2015/05/06 职场文书
六五普法学习心得体会
2016/01/21 职场文书
学生早退检讨书(范文)
2019/08/19 职场文书