2017-02-09 8 views
1

Ich habe die Winkels documentation zur Verwendung von Webpack 2 mit Winkel 2 verfolgt. Mein Code (github src here) ist mit dem webpack.dev.js Szenario eingerichtet.TS2304 mit Webpack 2 und Angular 2

Ausführen des dev build mit npm start (das heißt webpack-dev-server --inline --progress --port 8080) eine Reihe von TS2304 Fehler gibt, wie

ERROR in [at-loader] src\app\app.component.ts:5:15 
    TS2304: Cannot find name 'require'. 

ERROR in [at-loader] src\app\app.component.ts:6:14 
    TS2304: Cannot find name 'require'. 

Was nicht in Ordnung ist?

+0

Versucht, entfernen @ types und verwenden Sie stattdessen typings. Immer noch die gleichen Fehler. Muss etwas einfach zu vermissen sein .... –

+0

Also nur geklonter eckiger Schnellstart, und es scheint, keine Probleme zu sein, das zu bauen und zu laufen. –

Antwort

5

stellen Sie sicher, dass Sie @types/node installiert haben.

Schreiben Sie dann "types": ["jasmine","node"] in tsconfig.json Datei dann wird dieser Fehler entfernt.

weil der gleiche Fehler auch von mir konfrontiert wird. Diese Lösung ist für mich gearbeitet.

mein tsconfig.json

{ 
    "compilerOptions": { 
    "target": "es5", 
    "module": "commonjs", 
    "moduleResolution": "node", 
    "sourceMap": true, 
    "emitDecoratorMetadata": true, 
    "experimentalDecorators": true, 
    "lib": ["es2015", "dom"], 
    "noImplicitAny": true, 
    "suppressImplicitAnyIndexErrors": true, 
    "types": ["jasmine","node"] 
    } 
} 

und package.json

{ 
    "name": "webpackCreator", 
    "version": "1.0.0", 
    "description": "A webpack starter for Angular", 
    "scripts": { 
    "start": "webpack-dev-server --inline --progress --port 8080", 
    "test": "karma start", 
    "build": "rimraf dist && webpack --config config/webpack.prod.js --progress --profile --bail" 
    }, 
    "license": "MIT", 
    "dependencies": { 
    "@angular/common": "~2.4.0", 
    "@angular/compiler": "~2.4.0", 
    "@angular/core": "~2.4.0", 
    "@angular/forms": "~2.4.0", 
    "@angular/http": "~2.4.0", 
    "@angular/platform-browser": "~2.4.0", 
    "@angular/platform-browser-dynamic": "~2.4.0", 
    "@angular/router": "~3.4.0", 
    "core-js": "^2.4.1", 
    "rxjs": "5.0.1", 
    "zone.js": "^0.7.4" 
    }, 
    "devDependencies": { 
    "@types/jasmine": "^2.5.41", 
    "@types/node": "^6.0.45", 
    "angular2-template-loader": "^0.6.0", 
    "awesome-typescript-loader": "^3.0.0-beta.18", 
    "css-loader": "^0.26.1", 
    "extract-text-webpack-plugin": "2.0.0-beta.5", 
    "file-loader": "^0.9.0", 
    "html-loader": "^0.4.3", 
    "html-webpack-plugin": "^2.16.1", 
    "jasmine-core": "^2.4.1", 
    "karma": "^1.2.0", 
    "karma-jasmine": "^1.0.2", 
    "karma-phantomjs-launcher": "^1.0.2", 
    "karma-sourcemap-loader": "^0.3.7", 
    "karma-webpack": "^2.0.1", 
    "null-loader": "^0.1.1", 
    "phantomjs-prebuilt": "^2.1.7", 
    "raw-loader": "^0.5.1", 
    "rimraf": "^2.5.2", 
    "style-loader": "^0.13.1", 
    "typescript": "~2.0.10", 
    "webpack": "2.2.0", 
    "webpack-dev-server": "2.2.0-rc.0", 
    "webpack-merge": "^2.4.0" 
    } 
} 
+0

Hinzugefügt, aber keine Freude (Ich denke, der Typskript-Compiler sollte sie standardmäßig aufnehmen). Können Sie Ihre 'tsconfig.json' und möglicherweise' package.json' posten? Sehen Sie, ob es Unterschiede gibt - thnx. –

+0

So haben wir jetzt identische 'tsconfig.json' und' package.json' Dateien, aber ich bekomme immer noch alle diese Fehler. Interessant, welche Version von 'node' haben Sie installiert? –

+0

derzeit habe ich Knoten v6.9.1 und npm 3.10.8 –

1

Sie benötigen Node.js Typisierungen.

npm install @types/node --save-dev

+0

Ziemlich sicher, dass ich das habe, siehe meine 'package.json' [hier] (https://github.com/jdbriaris/angular-webpack/blob/master/package.json) –

1

das für mich fixiert es meinem tsconfig.json Hinzufügen:

"typeRoots": [ 
    "../node_modules/@types/" 
] 

ich in die Ausgabe lief nach dem Angular 2 Webpack Intro (https://angular.io/docs/ts/latest/guide/webpack.html)

Die tsconfig.json Code in der Anleitung unterscheidet sich von dem Code in der 'Endergebnis' Zip-Datei (https://angular.io/resources/zips/webpack/webpack.zip)

Hier ist mein ganzer tsconfig.json:

{ 
    "compilerOptions": { 
     "target": "es5", 
     "module": "commonjs", 
     "moduleResolution": "node", 
     "sourceMap": true, 
     "emitDecoratorMetadata": true, 
     "experimentalDecorators": true, 
     "lib": [ "es2015", "dom" ], 
     "noImplicitAny": true, 
     "suppressImplicitAnyIndexErrors": true, 
     "typeRoots": [ 
      "../node_modules/@types/" 
     ] 
    } 
} 
Verwandte Themen