Angular2 - Angular-CLI Installation lodash - Modul nicht gefunden

7

Mac OSX El Capitan | Winkel-Cli: 0.1.0 | Knoten: 5.4.0 | os: darwin x64

Ich versuche ein npm-Modul von Drittanbietern nach dem angular-cli-Wiki zu installieren: Ссылка aber scheitern. Ich habe seit Tagen damit zu kämpfen und würde jede Hilfe sehr schätzen.

Schritte, um den Fehler zu erhalten:

ng new lodashtest3 cd lodashtest3 npm install lodash --save typings install lodash --ambient --save

angular-cli-build.json:

module.exports = function(defaults) { return new Angular2App(defaults, { vendorNpmFiles: [ ... 'lodash/**/*.js' ] }); }; %Code% (lodash wird korrekt in dist / vendor hinzugefügt)

system-config.ts:

%Vor%

(alles laut Spezifikation in Ссылка ) Hinweis - Ich habe alle Konfigurationseinstellungen ausprobiert, die mir hier einfallen, und alle haben das gleiche Ergebnis.

lodashtest3.component.ts: ng build

import * as _ from 'lodash';

%Vor%

BEARBEITEN: mehr Informationen entsprechend den Kommentaren unten

dist / index.html:

%Vor%     
Daniel Mattsson 08.06.2016, 20:51
quelle

5 Antworten

25

Bei der stabilen Version und dem aktuellen angular-cli (1.0.0-beta.15) fügen Sie einfach das npm-Paket plus Typdefinitionen

hinzu %Vor%

Für frühe Versionen wie 1.0.0-beta.15 ist das nächste notwendig. Es sollte nicht für aktuelle Versionen benötigt werden:

Fügen Sie die Bibliothek der angular-cli.json Liste der globalen Skripts hinzu (fügen Sie "../node_modules/lodash/lodash.js" zur Liste apps[0].scripts hinzu).

Siehe Ссылка

    
zm0 23.09.2016, 16:50
quelle
7

FWIW, ab heute ( 1.0.0-beta.26 ) wird der Eintrag scripts nicht mehr benötigt.

Fügen Sie einfach die richtigen Einträge zu package.json hinzu mit:

%Vor%

Verwenden Sie dann in Ihrem TypeScript-Code:

%Vor%

Der Code wird gut laufen.

In meinem Fall verursachte das Hinzufügen des scripts -Eintrags Probleme.

    
Eric Liprandi 24.01.2017 21:07
quelle
5

[ aktualisierte Antwort ] Nach der neuen Version von angular-cli (1.0.0-beta.15):

füge einfach

hinzu %Vor%

Fügen Sie dann die Bibliothek zur angular-cli.json-Liste der globalen Skripts hinzu (fügen Sie "../node_modules/lodash/lodash.js" zur Liste apps[0].scripts hinzu).

und in Ihrer Komponente, wo Sie verwenden möchten, versuchen Sie diesen Weg

%Vor%

vorher: angular-cli (1.0.0-beta.15):

Fügen Sie diese Zeile in src / index.html

hinzu %Vor%

und in Ihrer Komponente, wo Sie verwenden möchten, versuchen Sie diesen Weg

%Vor%

Ich habe es sofort versucht, es hat für mich funktioniert

    
pd farhad 09.06.2016 06:29
quelle
2

Um Drittanbieterbibliotheken in Angular CLI und System.js zu unterstützen, müssen Sie sie manuell in system.config.ts und angular-cli-build.js angeben. Ich habe es hier mit Beispiel für lodash und anderen Abhängigkeiten beantwortet.

    
Urigo 11.07.2016 22:34
quelle
2

Stand vom 15.04.2017 mit @ angular / cli 1.0.0:

Sie müssen sehr genau angeben, welche Versionen Sie installieren, da ansonsten die TypeScript-Bindungen alle Arten von Fehlern verursachen. Was ich getan habe, ist meine devDependencies wie folgt in package.json :

zu aktualisieren %Vor%     
occasl 18.04.2017 13:49
quelle