有没有办法在键盘上按下一个键时安排一个事件。我似乎无法在事件触发器中找到它。
1 回答
1
对此有两种可能的答案。
第一个是 slate 只是 javascript,带有沙盒层(用于安全性和功能性),因此在某种程度上,如果您知道 dom 元素 ID 可以尝试使用类似于以下内容的内容来访问它:https ://developer.mozilla.org /en-US/docs/Web/API/Document/keypress_event#examples
const log = document.getElementById('log');
document.addEventListener('keypress', logKey);
function logKey(e) {
log.textContent += ` ${e.code}`;
}
由于沙盒层,根据您要实现的目标,它可能无法实现。如果您想在本地执行此操作,那么使用 slate 有效设计应用程序的诀窍是认为,每当变量更改时,整个世界都会被重新计算。类似于 Angular.js 上的生命周期刷新
slate 中没有针对按键的本地全局事件,因此,如果您想侦听冒泡到文档中的任何按键,那将无法正常工作。但是对于大多数用例,您可以解决它。例如,通过从输入设置变量,然后从其他地方读取它。
1 - 转到变量选项卡并创建一个新变量。
2 - 创建一个输入框。
3 - 将变量设置为在每次变量更改时更新。
4 - 从一些小部件或函数中读取变量。
于 2021-03-01T11:09:36.213 回答
