Există mai multe moduri, dar i - ar recomanda utilizarea document.createElementîn orice mod. De exemplu:
var image = <HTMLImageElement>document.createElement('img');
Ai putea crea funcții comoditate sau clase care înfășoară acest lucru pentru tine.
Una dintre celelalte metode ar fi, de exemplu, pentru a crea o referință la clasa imaginii originale înainte de definiția dumneavoastră de clasă:
var ImageElement = Image;
...
export class Image {
...
}
var image = new ImageElement()
Cu toate acestea, nu va fi recunoscut ca HTMLImageElementexemplu, adică fără finalizare cod corespunzător.
edita : aici e meu nelucratoare încercare de a mări Windowinterfața după cum se menționează în comentariile:
interface Window {
Image: new(width?: number, height?: number) => HTMLImageElement;
}
Se compilează în mod corect (adică fără erori), dar în Visual Studio este semnalizat ca o eroare, spunând Duplicate Identifier 'Image', și încearcă să creeze o instanță prin intermediul new window.Image()sunt marcate spunând new expressions only valid on constructors. Interesant este că funcționează bine pe alte interfețe, și după cum sa menționat deja, compileaza corect.