博客
关于我
vue 拖拽及右键菜单
阅读量:550 次
发布时间:2019-03-09

本文共 1096 字,大约阅读时间需要 3 分钟。

Vue.js 拖拽组件与上下文菜单应用实例

1. 安装 vuedraggable

通过 npm 安装 vuedraggable 组件:

npm install -S vuedraggable

2. 引用 vuedraggable

在 Vue 项目中引入并注册 draggable 组件:

3. 安装 e-vue-contextmenu

通过 npm 安装上下文菜单组件:

npm install --save e-vue-contextmenu@latest

4. 引用 e-vue-contextmenu

在 Vue 应用中引入并注册上下文菜单组件:

5. 使用 拖拽 组件

在组件中使用 draggable 组件,并在需要右键的元素上绑定上下文菜单事件:

6. 使用上下文菜单

在需要右键显示菜单的元素上绑定事件:

关闭其他
关闭左侧
关闭右侧

7. 方法实现

在组件的 methods 中定义相关函数:

methods: {  onStart() {    this.drag = true;  },  onEnd() {    this.drag = false;  },  rightClick(e) {    this.$refs.ctxshow.showMenu(e);  },  other() {    console.log(this.index1);    this.$store.commit('closeOther', this.index1);    this.$refs.ctxshow.hideMenu();  },  closeLeft() {    this.$store.commit('closeLeft', this.index1);    this.$refs.ctxshow.hideMenu();  },  closeRight() {    this.$store.commit('closeRight', this.index1);    this.$refs.ctxshow.hideMenu();  }}

8. 效果展示

通过上述配置,用户可以在组件中实现拖拽功能,同时在右键点击时显示自定义菜单,满足多种交互需求。

转载地址:http://iiliz.baihongyu.com/

你可能感兴趣的文章
Openlayers高级交互(1/20): 控制功能综合展示(版权、坐标显示、放缩、比例尺、测量等)
查看>>
Openlayers高级交互(10/20):绘制矩形,截取对应部分的地图并保存
查看>>
Openlayers高级交互(11/20):显示带箭头的线段轨迹,箭头居中
查看>>
Openlayers高级交互(12/20):利用高德逆地理编码,点击位置,显示坐标和地址
查看>>
Openlayers高级交互(13/20):选择左右两部分的地图内容,横向卷帘
查看>>
Openlayers高级交互(14/20):汽车移动轨迹动画(开始、暂停、结束)
查看>>
Openlayers高级交互(15/20):显示海量多边形,10ms加载完成
查看>>
Openlayers高级交互(16/20):两个多边形的交集、差集、并集处理
查看>>
Openlayers高级交互(17/20):通过坐标显示多边形,计算出最大幅宽
查看>>
Openlayers高级交互(18/20):根据feature,将图形适配到最可视化窗口
查看>>
Openlayers高级交互(19/20): 地图上点击某处,列表中显示对应位置
查看>>
Openlayers高级交互(2/20):清除所有图层的有效方法
查看>>
Openlayers高级交互(20/20):超级数据聚合,页面不再混乱
查看>>
Openlayers高级交互(3/20):动态添加 layer 到 layerGroup,并动态删除
查看>>
Openlayers高级交互(4/20):手绘多边形,导出KML文件,可以自定义name和style
查看>>
Openlayers高级交互(5/20):右键点击,获取该点下多个图层的feature信息
查看>>
Openlayers高级交互(6/20):绘制某点,判断它是否在一个电子围栏内
查看>>
Openlayers高级交互(7/20):点击某点弹出窗口,自动播放视频
查看>>
Openlayers高级交互(8/20):选取feature,平移feature
查看>>