J'essaie de combiner Angular1.5 + TypeScript. Types nécessaires installés:
npm install @types/angularjs
mais voyez toujours l'erreur:
erreur TS2307: Impossible de trouver le module "angulaire"
Déjà essayé différentes options:
import 'angular';
import 'angularjs'; //that is name inside @types
import angular from 'angularjs';
import * as angular from 'angular';
J'utilise:
"ts-loader": "1.0.0",
"TypeScript": "2.0.7",
"webpack": "1.13.3",
"webpack-dev-server": "1.16.2"
tsconfig est assez standard:
{
"compilerOptions": {
"target": "es5",
"noImplicitAny": false,
"sourceMap": false,
"lib": ["es6", "dom"],
"typeRoots": ["./node_modules/@types"]
},
"exclude": ["node_modules"]
}
déjà simplifié webpack config autant que possible: var webpack = new require ('webpack');
module.exports = {
context: __dirname + '/src',
entry: './index.ts',
output: {
path: './dist',
filename: 'app.bundle.js'
},
module: {loaders: [{test: /\.tsx?$/, loader: 'ts-loader'},]},
resolve: {
extensions: ['', '.webpack.js', '.web.js', '.ts', '.tsx', '.js'],
},
plugins: [new webpack.NoErrorsPlugin()],
devtool: 'source-map',
devServer: {
contentBase: './dist',
historyApiFallback: true,
inline: true
}
};
Et j'ai également simplifié index.ts lui-même, pour se concentrer uniquement sur l'importation de type:
import * as angular from 'angular';
angular.module('testmodule', []);
UPD : tsconfig.json. Ajout de l'option typeRoots.
Maintenant obtenir de nouvelles erreurs:
ERREUR dans .../node_modules/@types/angularjs/angular-mocks.d.ts (6,26): erreur TS2307: Impossible de trouver le module 'angulaire'.
ERREUR dans .../node_modules/@types/angularjs/angular-mocks.d.ts (65,49): erreur TS2304: Impossible de trouver le nom 'IServiceProvider'.
ERREUR dans .../node_modules/@types/angularjs/angular-mocks.d.ts (122,62): erreur TS2304: Impossible de trouver le nom 'IScope'.
ERREUR dans .../node_modules/@types/angularjs/index.d.ts (66,43): erreur TS2304: Impossible de trouver le nom 'JQuery'.
si vous l'exécutez dans la ligne de commande, cela devrait résoudre le problème.
npm install @types/angular
Ce qui est ennuyeux avec ce correctif, c'est que pour une raison quelconque, il ne met pas à jour votre package.json .. Cependant, si vous ajoutez ce qui suit à vos dépendances dans package.json à la place de ce qui précède, cela devrait résoudre le problème et que le package.json reflète vos packages.
"@types/angular": "1.6.5",
"@types/jquery": "2.0.40",