Ich verwende Typoskript 1.4.1 und haben ein Projekt wie so angelegt:
scripts/
libs/
jquery/
jquery.d.ts // Latest from DefinitelyTyped
jquery.js // 2.1.3
lodash/
lodash.d.ts // Latest from DefinitelyTyped
lodash.js // 3.3.1
main/
test.ts
My main/test.ts enthält folgende Komponenten:
/// <reference path="../libs/lodash/lodash.d.ts" />
/// <reference path="../libs/jquery/jquery.d.ts" />
import _ = require("lodash");
import $ = require("jquery");
function requireExistingElement($el: $.JQuery) {
if(_.isUndefined($el) || _.isNull($el) || $el.length === 0) {
throw new Error("It appears the requested element does not exist?");
}
}
requireExistingElement($("body"));
Dies wird mit dem folgenden Befehl kompiliert :
tsc --module amd scripts/main/test.ts
ich erwarte, dass dies richtig laufen, aber wenn ich es kompilieren, erhalte ich:
scripts/main/test.ts(7,38): error TS2304: Cannot find name '$'.
scripts/main/test.ts(13,24): error TS2304: Cannot find name '$'.
Meine Frage ist: Wie referenziere ich JQuery gegeben, dass das oben genannte nicht funktioniert? Oder mache ich nur etwas falsch?
Sie haben Recht, das war das Problem. Es scheint sehr nicht offensichtlich, aber es macht Sinn. Vielen Dank! – Smartboy