recherche

Maison  >  Questions et réponses  >  le corps du texte

angulaire.js - angulaire2 Impossible de résoudre tous les paramètres pour 'Parser' (?).

Je viens de construire un framework angulaire2, version angulaire 2.4.0, après l'empaquetage du webpack, la console du navigateur a signalé une erreur :
bundle.min.js:39162 Erreur non détectée : Impossible de résoudre tous les paramètres pour 'Parser' (? ). Assurez-vous que tous les paramètres sont décorés avec Inject ou ont des annotations de type valides et que 'Parser' est décoré avec Injectable.
Mais si la version angulaire est modifiée en 2.0, aucune erreur ne sera signalée. Le code est également la démo la plus simple du site officiel. Voici la configuration tsconfig.json

.
{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "moduleResolution": "node",
    "sourceMap": true,
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "removeComments": false,
    "noImplicitAny": false
  },
  "exclude": [
    "node_modules",
    "typings/main",
    "typings/main.d.ts"
  ],
  "compileOnSave": false,
  "buildOnSave": false
}

Est-ce une erreur de configuration ou une autre raison, veuillez résoudre

phpcn_u1582phpcn_u15822816 Il y a quelques jours799

répondre à tous(2)je répondrai

  • 伊谢尔伦

    伊谢尔伦2017-05-15 17:15:27

    D'après votre rapport d'erreur, il semble qu'il y ait un problème avec DI. Vous pouvez essayer de changer votre target en :

    .
    "target": "es6"

    Si cela ne fonctionne pas, essayez d'introduire explicitement l'opérateur dans votre service :

    import {Inject} from '@angular/core';
    //...
    constructor(@Inject(SomeService) someService: SomeService);

    J'espère que vous pourrez le résoudre en douceur :)

    répondre
    0
  • phpcn_u1582

    phpcn_u15822017-05-15 17:15:27

    Puisque vous n'avez pas posté le code complet, je ne peux que faire une supposition :
    Il se pourrait que lorsque vous avez appelé une certaine fonction, vous ne lui ayez pas transmis les paramètres requis par la fonction. Pour offrir une châtaigne :

    function fn(str){
        console.log(str || '参数未定义');
    }
    fn();//参数不正确
    

    Étant donné que TypeScript vérifiera également strictement les paramètres de la fonction, lorsque ce code exécute fn(), il ne transmet pas le paramètre str à fn, donc une erreur se produira lors de la compilation.

    Vous pouvez apprendre des projets d'autres personnes pour créer un environnement de développement angulaire. Github propose de nombreux exemples d'utilisation de webpack pour créer un environnement de développement angulaire. Voici une démo plus complète et meilleure pour référence :
    https://github. /a...

    répondre
    0
  • Annulerrépondre