Jeg tror mye av forvirringen rundt dette er på grunn av jQuery egentlig ikke opptre som en ekstern modul, som hemmer bruk av en importuttalelse. Løsningen er ganske ren, enkel og elegant nok til å ikke føle seg som en work-around.
Jeg har skrevet opp et enkelt eksempel på hjelp RequireJS og jQuery i Loggfila , som fungerer som følger ...
Du ta tak i typedefinisjoner fra Definitivt Type for RequireJS og jQuery.
Du kan nå bruke rå RequireJS med statisk typing innsiden av loggfila.
app.ts
///<reference path="require.d.ts" />
///<reference path="jquery.d.ts" />
require(['jquery'], function ($) {
$(document).ready(() => {
alert('Your code executes after jQuery has been loaded.');
});
});
Og da trenger du bare å legge den eneste skriptmerket til siden din:
<script data-main="app" src="require.js"></script>
Fordeler fremfor andre løsninger?
- Du kan oppdatere jQuery og RequireJS uavhengig
- Du trenger ikke å stole på mellomlegg prosjektet blir oppdatert
- Du trenger ikke å laste jQuery manuelt (eller noe annet som ikke er "som en modul" som du har en
.d.tsfil for)