Je configure TypeScript dans Visual Studio 2015. Je vais utiliser jQuery avec les fichiers TS. Quand j'utilise jQuery, VS soulignera le '$' et dira que le nom ne peut pas être trouvé et qu'il ne sera pas construit correctement. La seule façon de le construire est d’ajouter la référence aux typages jquery dans chaque fichier TS. /// <reference path="typings/index.d.ts" />
Est-il possible d'utiliser cette référence globalement au lieu de l'ajouter à chaque fichier?
Dans Visual Studio Code, je n'ai pas ce problème.
Mon répertoire ressemble à ceci - Scripts --ts --- typages --- main.ts tsconfig.json --js
Mon fichier tasks.json à la racine
{
"version": "0.1.0",
// The command is tsc. Assumes that tsc has been installed using npm install -g TypeScript
"command": "tsc",
// The command is a Shell script
"isShellCommand": true,
// Show the output window only if unrecognized errors occur.
"showOutput": "silent",
// Tell the tsc compiler to use the tsconfig.json from the open folder.
"args": ["-p", "../Scripts/Weblink/ts"],
// use the standard tsc problem matcher to find compile problems
// in the output.
"problemMatcher": "$tsc"
}
taskconfig.json dans Scripts/ts
{
"compileOnSave": true,
"compilerOptions": {
"noImplicitAny": false,
"noEmitOnError": true,
"removeComments": false,
"sourceMap": true,
"target": "es5",
"outDir": "../lib/"
},
"exclude": [
"typings/*"
]
}
Dans TypeScript 2.x, vous devriez installer les typages comme ceci:
npm install --save @types/jquery
Et alors:
import * as $ from "jquery";
Pas besoin de le référencer, TypeScript le gérera automatiquement.
Dans TypeScript 3 en utilisant npm:
npm install --save-dev @types/jquery
Et :
import "jquery";
L'alias n'est pas nécessaire.
Si vous n'utilisez pas npm:
Ajouter un nouveau fichier de déclaration (jquery.d.ts) contenant declare module 'jquery';
Et :
import "jquery";
ajoutez à votre tsconfig.json:
"moduleResolution": "node",
"lib": [ "es2015", "es2017", "dom" ]