如何在Angle 6 Web应用程序中使用Typescript防止f12和打印屏幕键。尝试添加js文件,但未触发文档事件。
答案 0 :(得分:0)
您需要将以下内容结合在一起。
Event#preventDefault
方法。document
(与模板中可见的特定元素相对),请使用带有@HostListener
前缀的document:
装饰器。AppComponent
)。因此,您要做的是遵循以下几句话。
@Component(/* ... */)
export class AppComponent {
// ...
@HostListener('document:keyup', ['$event'])
onKeyUp (event: KeyboardEvent) {
if (event.keyCode == '44' || event.keyCode == '123') {
event.preventDefault()
}
}
}
但是,请注意,您的“安全措施”是徒劳的,只会在用户真正想要使用功能时使他们发疯。另外,在某些情况下,OS /浏览器可能并不关心您的意图(这是正确的方法)。没有什么能阻止用户打开开发人员工具(例如,在Chrome中,您也可以通过 ctrl shift J 或使用浏览器的用户界面)。对于“窃取”图像,开发人员工具比捕获屏幕截图要方便得多。