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 相关文章推荐
window.addeventjs事件驱动函数集合addEvent等
Feb 19 Javascript
自己使用jquery写的一个无缝滚动的插件
Apr 30 Javascript
jQuery中:focus选择器用法实例
Dec 30 Javascript
jQuery实现菜单式图片滑动切换
Mar 14 Javascript
JavaScript调用浏览器打印功能实例分析
Jul 17 Javascript
js读取并解析JSON类型数据的方法
Nov 14 Javascript
利用JavaScript如何查询某个值是否数组内
Jul 30 Javascript
Vuejs在v-for中,利用index来对第一项添加class的方法
Mar 03 Javascript
4个顶级开源JavaScript图表库
Sep 29 Javascript
TypeScript中使用getElementXXX()的示例代码
Sep 12 Javascript
微信小程序自定义tabbar custom-tab-bar 6s出不来解决方案(cover-view不兼容)
Nov 01 Javascript
解决vue watch数据的方法被调用了两次的问题
Nov 07 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
PHP中实现中文字符进制转换原理分析
2011/12/06 PHP
php实现推荐功能的简单实例
2019/09/29 PHP
php7 新增功能实例总结
2020/05/25 PHP
原生JS实现表单checkbook获取已选择的值
2013/07/21 Javascript
JS实现的Select三级下拉菜单代码
2015/08/20 Javascript
浅谈JavaScript for循环 闭包
2016/06/22 Javascript
JS实现屏蔽网页右键复制及ctrl+c复制的方法【2种方法】
2016/09/04 Javascript
javascript跨域请求包装函数与用法示例
2016/11/03 Javascript
sea.js常用的api简易文档
2016/11/15 Javascript
详解JS对象封装的常用方式
2016/12/30 Javascript
jQuery实现贪吃蛇小游戏(附源码下载)
2017/03/04 Javascript
ES6 Promise对象概念与用法分析
2017/04/01 Javascript
jQuery常见面试题之DOM操作详析
2017/07/05 jQuery
vue-router路由懒加载和权限控制详解
2017/12/13 Javascript
JS实现骰子3D旋转效果
2019/10/24 Javascript
js中实现继承的五种方法
2021/01/25 Javascript
Python使用scrapy采集数据过程中放回下载过大页面的方法
2015/04/08 Python
对于Python的框架中一些会话程序的管理
2015/04/20 Python
Python时间模块datetime、time、calendar的使用方法
2016/01/13 Python
python利用正则表达式排除集合中字符的功能示例
2017/10/10 Python
Django内容增加富文本功能的实例
2017/10/17 Python
深入浅析Python中的yield关键字
2018/01/24 Python
python中实现数组和列表读取一列的方法
2018/04/03 Python
Django中日期处理注意事项与自定义时间格式转换详解
2018/08/06 Python
Django使用Jinja2模板引擎的示例代码
2019/08/09 Python
HTML5 HTMLCollection和NodeList的区别详解
2020/04/29 HTML / CSS
教师师德教育的自我评价
2013/10/31 职场文书
会计毕业生自我鉴定
2013/11/04 职场文书
2014年大学生就业规划书
2014/04/04 职场文书
个人工作表现评语
2014/04/30 职场文书
2014年办公室文秘工作总结
2014/12/09 职场文书
家长评语怎么写
2014/12/30 职场文书
鼋头渚导游词
2015/02/05 职场文书
2015年国庆节活动总结
2015/03/23 职场文书
vue前端工程的搭建
2021/03/31 Vue.js
浅谈golang 中time.After释放的问题
2021/05/05 Golang