Vscode-ng-language-service: Le paramètre des chemins dans tsconfig.json provoque des problèmes

Créé le 13 oct. 2017  ·  21Commentaires  ·  Source: angular/vscode-ng-language-service

J'ai TSLint (5.7.0), codelyzer (3.2.1) et le service angular lang 0.1.7 installé sur vscode 1.17.0 (Windows)

Dans mon projet angular cli (1.4.5)

Si j'ai le paramètre suivant dans tsconfig

"paths": {
  "@app/*": ["app/*"],
  "@env/*": ["environments/*"]
},

et mon importation serait comme
import {SharedModule} depuis '@ app / shared / shared.module';

J'aurai beaucoup d'erreur comme celle-ci dans mon modèle affiché dans vscode avec des soulignements rouges.

[Angulaire] Liaison de propriété ngIf non utilisée par une directive sur un modèle incorporé. Assurez-vous que le nom de la propriété est correctement orthographié et que toutes les directives sont répertoriées dans "@ NgModule.declarations".

Mais si je l'importe avec un chemin relatif

import {SharedModule} de '../../shared/shared.module';

Le problème disparaît.

au début, je pensais que c'était vscode-tslint https://github.com/Microsoft/vscode-tslint/issues/276#event -1292520818

Mais il semble que ce soit de Angular Language Service

bug

Commentaire le plus utile

Ici, j'ai le même problème.

Tous les 21 commentaires

Ici, j'ai le même problème.

J'ai le même problème

  • vscode affiche une erreur lors de l'utilisation d'un alias de chemin
  • vs code show error lors de l'utilisation de * ngIf ... dans le modèle

@maxisam Pourriez-vous écrire ici à quoi ressemble votre structure de code? Surtout où se trouvent app.module.ts et shared.module.ts. Utilisez-vous des barels (index.ts)?

Je voudrais mentionner que si vous utilisez "paths" dans votre tsconfig, vous devez spécifier "baseUrl". (selon cette réponse stackoverflow )

racine
| --src
| --app
| --partager

Je n'utilise pas de barils. C'est une disposition CLI normale. Le projet est généré par cli.

Il a des chemins de définition.

Même problème ici, le paramètre baseUrl est déjà défini avec "src" et pourtant cela ne fonctionne pas.

Cette configuration a résolu le problème pour moi:

"baseUrl": "./",
"paths": {
  "@app/*": ["app/*"],
  "@env/*": ["environments/*"],
  "@services/*": ["app/modules/core/services/*"],
  "@models/*": ["app/models/*"],      
  "@components/*": ["app/components/*"],
  "@modules/*": ["app/modules/*"],
  "@core/*": ["app/modules/core/*"],
  "@shared/*": ["app/modules/shared/*"],
  "@features/*": ["app/modules/features/*"]
}

J'utilise Angular-CLI et j'ai également ce problème lors de l'utilisation d'une bibliothèque de composants externes (dont je suis l'auteur). J'ai essayé de changer le tsconfig.app.json avec la configuration mentionnée mais cela n'a rien changé de mon côté. Existe-t-il une autre solution de contournement? Et / ou, dois-je effectuer des modifications dans ma bibliothèque?

Merci @aitboudad mais cela n'a pas fonctionné pour moi. J'ai finalement pris le temps de mettre à jour mon application vers Angular 5 et je l'ai mise à jour comme vous l'avez suggéré dans cet autre numéro vers "@angular/language-service": "5.1.0-beta.1" mais j'obtiens toujours cette erreur. Il provient d'une bibliothèque que j'ai créée appelée Angular-Slickgrid et dans mon environnement de développement en utilisant des chemins relatifs ./ Je ne vois pas ce problème, mais en utilisant la lib dans une application externe comme import ... from 'angular-slickgrid' et passez complètement à ma vue, il devient complètement rouge comme indiqué ci-dessous.

Vous pouvez voir que l'erreur est

[Angular] Cannot read property 'isSkipSelf' of null

cannotskipitself

@ghiscoding après l'installation de @angular/language-service vous devriez redémarrer vscode

@aitboudad Oui, j'avais fait ça aussi mais j'ai quand même l'erreur.

Cela ne fonctionne pas non plus pour moi, même après l'installation de @ angular / language-service

Je peux également signaler le même problème. Cela se produit uniquement dans VS Code avec l'extension de service de langue. WebStorm n'a aucun problème avec cela par défaut et résout tout.
Voir également: https://github.com/angular/angular/issues/16382 et https://github.com/nrwl/nx/issues/73.

des mises à jour à ce sujet?

Bonjour, je pensais que j'étais le seul.

Je travaille sur un Angular Mono Repo, et cela a commencé à m'arriver il y a quelque temps.

En espérant que cela soit corrigé bientôt! Merci les gars!

@chuckjaz des idées?

https://github.com/angular/angular/issues/16382 a corrigé ce problème et il a été publié sous le nom Angular.ng-template 0.1.9. @fxck Pouvez-vous vérifier si vous utilisez la dernière version?

@kyliau
Je ne vois plus le problème de mon côté, donc je peux confirmer que cela fonctionne pour moi maintenant. Merci

Fermeture pour l'instant car le problème est résolu.

Ce problème a été automatiquement verrouillé en raison de l'inactivité.
Veuillez signaler un nouveau problème si vous rencontrez un problème similaire ou connexe.

En savoir plus sur notre politique de verrouillage automatique des conversations .

_Cette action a été effectuée automatiquement par un bot._

Cette page vous a été utile?
0 / 5 - 0 notes