博客
关于我
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/

你可能感兴趣的文章
Plotly 绘制表面 3D 未显示
查看>>
Plotly-Dash 存在未知问题并创建“加载依赖项时出错“;通过使用 Python-pandas.date_range
查看>>
Plotly-Dash:如何过滤具有多个数据框列的仪表板?
查看>>
Plotly:如何为 x 轴上的时间序列设置主要刻度线/网格线的值?
查看>>
Plotly:如何从 x 轴删除空日期?
查看>>
Plotly:如何从单条迹线制作堆积条形图?
查看>>
Plotly:如何以 Root 样式绘制直方图,仅显示直方图的轮廓?
查看>>
Plotly:如何使用 Plotly Express 组合散点图和线图?
查看>>
Plotly:如何使用 plotly.graph_objects 和 plotly.express 定义图形中的颜色?
查看>>
Plotly:如何使用 Python 对绘图对象条形图进行颜色编码?
查看>>
Plotly:如何使用 updatemenus 更新一个特定的跟踪?
查看>>
Plotly:如何使用长格式或宽格式的 pandas 数据框制作线图?
查看>>
Plotly:如何向烛台图添加交易量
查看>>
Plotly:如何在 plotly express 中找到趋势线的系数?
查看>>
Plotly:如何在桑基图中设置节点位置?
查看>>
Plotly:如何处理重叠的颜色条和图例?
查看>>
Plotly:如何手动设置 plotly express 散点图中点的颜色?
查看>>
Plotly:如何结合 make_subplots() 和 ff.create_distplot()?
查看>>
Plotly:如何绘制累积的“步骤“;直方图?
查看>>
Quartz进一步学习与使用
查看>>