Javascript Typescript错误-属性';许可';类型上不存在
我的javascript代码显示了通知权限的当前状态: main.jsJavascript Typescript错误-属性';许可';类型上不存在,javascript,typescript,Javascript,Typescript,我的javascript代码显示了通知权限的当前状态: main.js var $status = document.getElementById('status'); if ('Notification' in window) { $status.innerText = Notification.permission; } index.html <!DOCTYPE html> <html lang="en"> <head> <me
var $status = document.getElementById('status');
if ('Notification' in window) {
$status.innerText = Notification.permission;
}
index.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<p>Current permission status is
<b id="status">unavailable</b>
</p>
<script src="/scripts/main.js"></script>
</body>
</html>
文件
当前权限状态为
不可用的
如果在typescript文件中写入相同的代码,则会出现以下错误:
梅因酒店
var $status = document.getElementById('status');
if ('Notification' in window) {
$status.innerText = Notification.permission;
}
ERROR - Notification.permission
MESSAGE - Property 'permission' not exists on type
'new(title: string, options?: NotificationOptions): Notification;
prototype: Notification;
requestPermission(callback?: NotificationPermissionCallback):
Promise<string>;'
var$status=document.getElementById('status');
如果(窗口中的“通知”){
$status.innerText=Notification.permission;
}
错误-通知。权限
消息-类型上不存在属性“权限”
'新建(标题:字符串,选项?:NotificationOptions):通知;
原型:通知;
requestPermission(回调?:NotificationPermissionCallback):
保证
如何忽略此错误?尝试将
通知
转换为任何
类型,以避免传输错误
if ('Notification' in window) {
$status.innerText = (Notification as any).permission;
}
另一个选项是包含
通知
类型的定义。请参见。它通过将通知
强制转换为任何
来工作。如何包含通知
类型的定义?通知属于哪个库?通常(使用最新版本的Typescript-2.0+),您可以执行以下操作:npm install@types/{library name}
。通知是浏览器api no library的一部分。