TypeScript和Chrome通知

max*_*992 8 push-notification typescript tslint

我正在构建Chrome应用.该应用程序使用TypeScript(Angular2)编写.

我想推送通知.这是代码:

import {Injectable} from 'angular2/core';

@Injectable()
export class NotificationService {
    constructor() {
        if(Notification.permission !== 'granted') {
            Notification.requestPermission();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

当gulp构建应用程序时,它说:

src/scripts/stream/notification.service.ts(6) Cannot find name 'Notification'.
Run Code Online (Sandbox Code Playgroud)

我试着把我的课包在里面:

/* tslint:disable */
... the code
/* tslint:enable */
Run Code Online (Sandbox Code Playgroud)

但它没有改变任何东西.

有没有办法用tslint.json文件告诉Typescript这是一个全局变量?

使用jshint会是这样的:

"globals": {
   "Notification": false
}
Run Code Online (Sandbox Code Playgroud)

Pab*_*blo 11

这里有几个选项:

  1. 将以下行添加到文件的顶部.

    声明var通知:any;

    这将使转换器通过,但不会给你很多TypeScript的功能.

  2. 下载定义类型(chrome.d.ts).

    TSD似乎是最受欢迎的定义管理器.
    打字是另一个有前途的选择.