Je pense que beaucoup de confusion autour de cela est dû à jQuery pas vraiment agir comme un module externe, ce qui empêche l'utilisation d'une importdéclaration. La solution est tout à fait propre, simple et assez élégant pour ne pas se sentir comme un travail autour.
Je l' ai écrit un exemple simple d' utilisation de RequireJS et jQuery dactylographiée , qui fonctionne comme suit ...
Vous prenez les définitions de type de Definitely typées pour RequireJS et jQuery.
Vous pouvez maintenant utiliser RequireJS premières avec le typage statique à l'intérieur du fichier dactylographiée.
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.');
});
});
Et puis il vous suffit d'ajouter la balise unique de script à votre page:
<script data-main="app" src="require.js"></script>
Les avantages par rapport aux autres solutions?
- Vous pouvez mettre à jour jQuery et RequireJS indépendamment
- Vous ne devez pas compter sur le projet de mise à jour shim
- Vous ne devez pas charger manuellement jQuery (ou toute autre chose qui n'est pas « comme un module » que vous avez un
.d.tsfichier)