2016-08-03 4 views
1

Beispiel:möglichen Fehler in Typoskript JQuery.html()

let $div = $("div"); 
let $p = $("p"); 
$div.html($p); 

gibt diesen Fehler:

Lieferung Parametern entsprechen keine Unterschrift des Anrufziel.

EDIT: in einfachen js/jquery das funktioniert. Ein Äquivalent (im Endergebnis) auf die folgenden (noch in Typoskript):

let $div = $("div"); 
let $p = $("p"); 
$div.html("").append($p); 

Ist die Typoskript Definition von JQuery.html() ist falsch oder habe ich einen Fehler gemacht irgendwo?

Antwort

1

Signatur, die Sie suchen, ist in Typoskript Definition fehlt (wie es nicht dokumentiert ist), aber Sie können es manuell hinzufügen:

interface JQuery{ 
    html(obj:JQuery): JQuery; 
} 
+2

i bin neugierig, wenn JQuery etwas über die Verwendung von JQuery.html zu sagen hat() diesen Weg? Vielleicht ist es nicht empfehlenswert oder es gibt einen anderen Grund, warum die Typoskript-Definition fehlt. – mobal

+2

@mobal: Du hast recht zu fragen, [es ist undokumentiert] (http://api.jquery.com/html/). (TIL!) 'Html' ist nur * dokumentiert * um' string' und 'function' zu akzeptieren (was vermutlich der Grund dafür ist, dass dies nicht in der ts-Datei ist). Es funktioniert (https://jsfiddle.net/vuop0e57/), und soweit ich weiß, hat es immer funktioniert, aber es ist kein * dokumentiertes * Verhalten. –

+0

@ T.J. Crowdd danke das löst diese Frage. – mobal

Verwandte Themen