2016-09-28 9 views
1

Ich versuche Ang2 kennen zu lernen. Ich folge einem Tutorial, das besagt, dass ich eine Direktive mit dem Befehl "ng g d NAME" hinzufügen soll. Nun, wenn ich das tue ich erhalte eine Fehlermeldung:Angular2 Fehler beim Installieren der Direktive

Installation Richtlinie:

  • src \ app \ highlight.directive.spec.ts
  • erstellen src \ app \ highlight.directive erstellen. ts

    Cannot read property 'read' of undefined 
    TypeError: Cannot read property 'read' of undefined 
        at InsertChange.apply (c:\Users\...\Desktop\Tutorials\Angular2\udemy\02-directives\node_modules\@angular-cli\ast-tools\src\change.js:96:20) 
        at c:\Users\...\Desktop\Tutorials\Angular2\udemy\02-directives\node_modules\@angular-cli\ast-tools\src\change.js:71:61 
        at process._tickCallback (internal/process/next_tick.js:103:7) 
    

ich weiß nicht, was zu tun, um dieses Problem zu beheben. Die .ts-Datei wurde erstellt, aber ich kann die Direktive in meiner Komponente nicht verwenden.

Alle Vorschläge sind wirklich willkommen.

+0

Ich habe den gleichen Fehler an der gleichen Datei 'change.js' auf dem Mac.Ich mache ein Tutorial über Udemy lernen Angular 2. Was ich bemerkte, ist, dass meine Dateien erstellt werden, aber sie werden nicht automatisch in die richtigen Stellen in anderen Dateien integriert und ich bekomme nie eine 'index.ts' in meinem Ordner entweder. Ich verwende 'ng g c someComponent'. Es spielt keine Rolle, ob ich "flat" mache oder nicht. – Jarvis

+0

Ich ging auch weiter und versuchte, den angular-cli zu aktualisieren, um zu sehen, ob das das Problem lösen würde. Es hat nicht. – Jarvis

+0

Machen Sie dieses Tutorial "Angular 2 - The Complete Guide"? Ich habe alles im Zusammenhang mit dem Projekt aktualisiert. Funktioniert nicht. –

Antwort

0

Gleiche Antwort @MrJuliuss aber mit vollen Schritten und Details ... Die folgenden Schritte sind für die globale Installation. Um es einfach für den lokalen zu machen, entfernen Sie die -g von den npm Befehlen.

  1. Führen Sie ng -v aus, um zu sehen, welche Version Sie haben.

    angular-cli: 1.0.0-beta.15 
    node: 6.5.0 
    os: darwin x64 
    
  2. die neueste Version von Knoten Get: https://nodejs.org/

  3. Deinstallieren Sie die beta.15 (etwas weniger als 16)

    npm uninstall -g angular-cli 
    
  4. Reinigen Sie den Cache

    npm cache clean 
    
  5. Re -installiere das neue neuste Version

    npm install -g [email protected] 
    
  6. Erstellen Sie ein neues Projekt mit dem neuen CLI. Sie können Ihre Codedateien in das neue Projekt kopieren/einfügen. Das alte Projekt lässt das neue CLI nicht funktionieren. (Was ist das, was mich weiter führen zu glauben, dass dieses Problem eine Erlaubnis war.

    ng new <project-name> 
    
+0

Danke euch allen. Die letzte Antwort hat mein Problem gelöst! –

2

Ich habe das gleiche Problem mit Winkel-cli 1.0.0-beta.15 und fixiert es mit 1.0.0-beta.16

  • npm install -g angular-cli Ihre globale ng cli

  • zu aktualisieren ich mein package.json Projekt mit 1.0.0-beta.16 (devDependencies) ändern statt 1.0.0-beta.15

  • npm install im Projekt

Und es funktioniert.

+0

Bitte führen Sie die Schritte, die Sie getan haben, um dieses Upgrade abzuschließen. Ich habe 'npm deinstalliert -g angular-cli' dann' npm cache clean' endlich 'npm install -g angular-cli @ neustes 'auch ... welche Version von node? Ich benutze 6.5. – Jarvis

+0

Habe gerade meine Antwort aktualisiert;) mit Knoten 6.7.0 – MrJuliuss

+0

Danke! Ich hatte angefangen, einen vollständigen Beitrag zu schreiben und ein paar weitere Details zur Verfügung gestellt, also habe ich es wie unten beschrieben beendet. :) – Jarvis