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

你可能感兴趣的文章
thinkphp 常用SQL执行语句总结
查看>>
Oracle:ORA-00911: 无效字符
查看>>
Text-to-Image with Diffusion models的巅峰之作:深入解读 DALL·E 2
查看>>
TCP基本入门-简单认识一下什么是TCP
查看>>
tableviewcell 中使用autolayout自适应高度
查看>>
Orcale表被锁
查看>>
svn访问报错500
查看>>
Orderer节点启动报错解决方案:Not bootstrapping because of 3 existing channels
查看>>
org.apache.ibatis.exceptions.PersistenceException:
查看>>
org.apache.ibatis.exceptions.TooManyResultsException: Expected one result (or null) to be returned
查看>>
org.apache.ibatis.type.TypeException: Could not resolve type alias 'xxxx'异常
查看>>
org.apache.poi.hssf.util.Region
查看>>
org.apache.xmlbeans.XmlOptions.setEntityExpansionLimit(I)Lorg/apache/xmlbeans/XmlOptions;
查看>>
org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /
查看>>
org.hibernate.HibernateException: Unable to get the default Bean Validation factory
查看>>
org.hibernate.ObjectNotFoundException: No row with the given identifier exists:
查看>>
SQL-CLR 类型映射 (LINQ to SQL)
查看>>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
查看>>
org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
查看>>
org.springframework.web.multipart.MaxUploadSizeExceededException: Maximum upload size exceeded
查看>>