vue-drag-resize 拖拽组件
GitHub:https://github.com/kirillmurashov/vue-drag-resize
-
安装
1
npm i -s vue-drag-resize
-
引入
1
2
3
4import Vue from 'vue'
import VueDragResize from 'vue-drag-resize'
Vue.component('vue-drag-resize', VueDragResize) -
使用
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39<template>
<div id="app">
<VueDragResize :isActive="true" :w="200" :h="200" v-on:resizing="resize" v-on:dragging="resize">
<h3>Hello World!</h3>
<p>{{ top }} х {{ left }} </p>
<p>{{ width }} х {{ height }}</p>
</VueDragResize>
</div>
</template>
<script>
import VueDragResize from 'vue-drag-resize';
export default {
name: 'app',
components: {
VueDragResize
},
data() {
return {
width: 0,
height: 0,
top: 0,
left: 0
}
},
methods: {
resize(newRect) {
this.width = newRect.width;
this.height = newRect.height;
this.top = newRect.top;
this.left = newRect.left;
}
}
}
</script> -
属性
属性 类型 是否必填 默认值 描述 isActive Boolean false false 是否应处于活动状态 isDraggable Boolean false true 能否拖拽 isResizable Boolean false true 能否缩放 aspectRatio Boolean false false 等比缩放(坑) axis String[x,y,both,none] false both 可拖动的方向 w Number|String false 200 初始宽度 h Number|String false 200 初始高度 minw Number false 50 最小宽度 minh Number false 50 最小高度 x Number false 0 初始X位置 y Number false 0 初始Y位置 z Number|String false auto 层级 stickSize Number false 8 拖拽节点的大小 sticks Array false [‘tl’, ‘tm’, ‘tr’, ‘mr’, ‘br’, ‘bm’, ‘bl’, ‘ml’] 定义句柄数组以限制元素大小调整 snapToGrid Boolean false false 是否贴合网格 gridX Number(≥0) false 50 定义网格宽度 gridY Number(≥0) false 50 定义网格高度 parentLimitation Boolean false false 将组件更改的范围限制为其父大小 preventActiveBehavior Boolean false false 通过单击组件并单击组件区域外部来禁用组件的行为 parentH Number(≥0) false 0 父元素的初始高度, 指定边界 parentW Number(≥0) false 0 父元素的初始宽度, 指定边界 parentScaleX Number false 1 定义初始水平比例或父元素。父级的transform:scale()css定义中的值相同 parentScaleY Number false 1 定义初始垂直比例或父元素。父级的transform:scale()css定义中的值相同 dragHandle String false 定义应该用于拖动组件的选择器,即可以触发拖拽事件的元素选择器 dragCancel String false 定义应该用于防止拖动初始化的选择器,即不可以触发拖拽事件的元素选择器 contentClass String false 添加类名 -
方法
方法名 说明 参数 clicked 单击组件时调用 event activated 单击组件时调用,激活组件,显示句柄 - deactivated 单击组件外部时调用,停用组件,隐藏句柄 - resizing 当组件调整大小时调用 object{left, top,width,height} resizestop 当组件停止调整大小时调用 object{left, top,width,height} dragging 当拖动组件时调用 object{left, top,width,height} dragstop 当组件停止拖动时调用 object{left, top,width,height}
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 NaClO's Blog!
评论
