html - Utöka HTMLElement i TypeScript


Jag försöker utöka HTMLElement i TypeScript. Jag har provat olika metoder och de fungerar alla, men jag får hela tiden ett TypeScript-fel:

Argumentet Sprite kan inte tilldelas parametratypen Node;

När jag gör :

document.body.appendChild(createSprite());

interface Sprite extends HTMLElement {

}

function createSprite() : Sprite {

    return <Sprite> document.createElement("div");

}

document.body.appendChild(createSprite());

Svar #1

Jag körde detta genom TypeScript Playground (och lade till lite text så att jag kunde se resultatet) och det fungerar bra:

interface Sprite extends HTMLElement {

}

function createSprite() : Sprite {
    return <Sprite> document.createElement("div");
}

var sprite = createSprite();
sprite.innerHTML = 'Test';
document.body.appendChild(sprite);