VUE3.0 使用全局快捷键
Posted bywayboy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VUE3.0 使用全局快捷键相关的知识,希望对你有一定的参考价值。
vue3.0中 使用全局快捷键是比较容易的, 我们可以通过监听document.onkeypress 或者 onkeydown 来实现.
1. 首先编写一个全局快捷键类,
import inject from "@vue/runtime-core";
const rkey = \'r-shortcut-key\'
function RKeyMap()
var map = ;
this.bind = (skey, fn)=>
map[skey] = fn;
return this;
this.evt = (k) =>
if(map.hasOwnProperty(k))
map[k]();return true;
return false;
let ShortCutKey = function()
let keys = [], me = this;
document.onkeydown = function(e)
if(keys.length > 0)
let ka = [];
if(e.ctrlKey) ka.push(\'Ctrl\');
if(e.shiftKey)ka.push(\'Shift\');
if(e.altKey) ka.push(\'Alt\');
ka.push(e.key.toUpperCase());
let kname = ka.join(\'+\');
if(keys[keys.length-1].evt(kname))
以上是关于VUE3.0 使用全局快捷键的主要内容,如果未能解决你的问题,请参考以下文章
Vue3 如何挂载全局方法 和用getCurrentInstance代替this
Vue3.0全家桶最全入门指南 - vue3.0新特性 (2/4)