我想创建触摸手势,例如在Chromium中为我的Electron应用创建手势。它应该做两件简单的事情:向左滑动时加载下一页,向右滑动时加载上一页。
我找到了这个npm软件包https://www.npmjs.com/package/swipe-detect,它似乎可以做到。它需要一个TARGET_DOMAIN_NODE(我猜是屏幕)和一个CALLBACK,我想这是调用滑动功能和滑动长度阈值的功能。
我想使用
import swipeDetect from 'swipe-detect';
在main.js中,但是出现意外的标识符错误。所以我想我必须写
const swipeDetect = require ('swipe-detect');
与其他软件包一样。
swipeDetect向左,向右,向上或向下输出,所以我编写了这个简单的函数并将其放在main.js的顶部
function swipeHandler (direction) {
if(direction == 'left') {
parent.document.getElementById(1).contentWindow.history.forward();
}
if(direction == 'right') {
parent.document.getElementById(1).contentWindow.history.back();
}
}
然后输入我的swipeDetect
swipeDetect(electron.screen.getPrimaryDisplay(), swipeHandler(), 150);
但是我得到了
export default function(target, callback, threshold=150) {
^^^^^^
SyntaxError: Unexpected token export
at Module._compile (internal/modules/cjs/loader.js:752:23)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:820:10)
at Module.load (internal/modules/cjs/loader.js:677:32)
at tryModuleLoad (internal/modules/cjs/loader.js:609:12)
at Function.Module._load (internal/modules/cjs/loader.js:601:3)
at Module.require (internal/modules/cjs/loader.js:715:19)
at require (internal/modules/cjs/helpers.js:14:16)
at Object.<anonymous> (C:\folder\main.js:17:21)
at Module._compile (internal/modules/cjs/loader.js:808:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:820:10)
我猜格式是错误的。已经尝试将electron.screen.getPrimaryDisplay()放入{},但这并没有任何改变。