[halo-dev/halo]macos 编辑器中按 command+s 应该是保存文章,目前是下载网页

2024-04-01 89 views
7
你当前使用的版本

2.8.0.rc.2

描述一下此特性

编辑器中按 command+s 应该是保存文章,目前是下载网页

系统:macos 浏览器:chrome

回答

5

通过阅读代码,我发现这里的command+s功能应该是和编辑器页面的保存按钮的功能(console/src/modules/contents/pages/SinglePageEditor.vue)是一致的,于是我想在SinglePageEditor.vue添加一个监听快捷键command+s的功能,但是我发无法触发该监听功能。

const isMac = /macintosh|mac os x/i.test(navigator.userAgent);

const handleSaveKeybinding = (e: KeyboardEvent) => {
  const { key, ctrlKey, metaKey } = e;
  if (key === "j" && ((ctrlKey && !isMac) || metaKey)) {
    e.preventDefault();
    handleSave();
  }
};

onMounted(() => {
  document.addEventListener("keydown", handleSaveKeybinding);
});

onUnmounted(() => {
  document.removeEventListener("keydown", handleSaveKeybinding);
});
9
- if (key === "j" && ((ctrlKey && !isMac) || metaKey)) {
+ if (key === "s" && ((ctrlKey && !isMac) || metaKey)) {

这里是不是应该是 key === 's'