2016-12-02 9 views
4

根据这个帖子如何在TypeScript中创建ErrorEvent?

How to properly initialize en ErrorEvent in javascript?

您应该能够创建此代码EventError

var error = new ErrorEvent('oh nose', { 
    error : new Error('AAAHHHH'), 
    message : 'A monkey is throwing bananas at me!', 
    lineno : 402, 
    filename : 'closet.html' 
}); 

但是,如果你尝试这种在打字稿操场:

https://www.typescriptlang.org/play/#src=var%20error%20%3D%20new%20ErrorEvent('oh%20nose'%2C%20%7B%0A%20%20%20%20error%20%3A%20new%20Error('AAAHHHH')%2C%0A%20%20%20%20message%20%3A%20'A%20monkey%20is%20throwing%20bananas%20at%20me!'%2C%0A%20%20%20%20lineno%20%3A%20402%2C%0A%20%20%20%20filename%20%3A%20'closet.html'%0A%7D)%3B它说Supplied parameters do not match any signature of call target.

即使这个简单的例子不能编译:

var error = new ErrorEvent('oh nose'); 

我曾尝试通过查看类型定义

https://github.com/Microsoft/TypeScript/blob/master/lib/lib.es6.d.ts#L9612

弄明白但不能弄明白。

在TypeScript中创建完全合法的EventError时缺少了什么?

回答

3

lib.es6.d.tsspec不完全对齐。

您应该TypeScript's github登录的问题,但暂时可以编辑lib.es6.d.ts包括修复:

// add this interface 
interface ErrorEventInit { 
    // ...put the properties here... 
} 

// edit this declare var's new signature 
declare var ErrorEvent: { 
    new(type: string, eventInitDict?: ErrorEventInit): ErrorEvent; 
    prototype: ErrorEvent; 
} 
相关问题