首页 > 解决方案 > 在按钮单击时调用 printscreen 功能

问题描述

嗨,我正在使用 angular2,我正在尝试使用按钮和按钮单击方法从页面调用打印屏幕功能。

我想要做的是,一旦我单击按钮,我必须为按钮按下事件调用主机侦听器,并截取整个屏幕而不仅仅是窗口的屏幕截图。

我的代码如下:在 screenshot.component.html 页面中:

<button (click) ="onkeydownHandler($event)">Capture</button>

在 screenshot.component.ts 文件中:

export class ScreenshotComponent{

    onkeydownHandler(event: MouseEvent) {

        @HostListener('window:keyup', event.keyCode='44')
        keyEvent(event: KeyboardEvent) {
            console.log(event);
        }
    }
}

由于 printscreen 按钮的键码是 44,因此我使用该代码并尝试调用 printscreen 按钮的操作。尝试执行此操作时出现以下异常:

ReferenceError: keyEvent is not defined
    at ScreenshotComponent.onkeydownHandler (screenshot.component.ts:14)
    at ChangeDetector_ScreenshotComponent_0.handleEventInternal (viewFactory_ScreenshotComponent:30)
    at ChangeDetector_ScreenshotComponent_0.AbstractChangeDetector.handleEvent (angular2.dev.js:9568)
    at AppView.triggerEventHandlers (angular2.dev.js:10246)
    at eval (viewFactory_ScreenshotComponent:84)
    at angular2.dev.js:14068
    at angular2.dev.js:13496
    at ZoneDelegate.invoke (angular2-polyfills.js:332)
    at Object.onInvoke (angular2.dev.js:2111)
    at ZoneDelegate.invoke (angular2-polyfills.js:331)

这是正确的做法吗?有人可以帮忙吗?

标签: javascriptangular

解决方案


推荐阅读