2016-07-09 14 views
4

Ich benutze Angular2 RC4 Version und Webpack dev Server. Ich kann meine Anwendung nicht erfolgreich laden. In der Browserkonsole wird 404 ausgelöst und die AppComponent-Vorlagendatei kann nicht mit Webpack geladen werden. Dies funktioniert, wenn ichAngular 2 Web Pack 404 HTML Vorlage URLs

app.component.ts lite-Server verwenden Snippet

@Component({ 
    moduleId:module.id, 
    selector: 'body', 
    templateUrl: 'app.component.html', 
}) 

webpack.config.js

module:{ 
     loaders:[ 
      {test:/\.ts$/, loader:'ts', exclude: /node_modules/}, 
      {test:/\.html$/, loader:'html' }, 
     ], 

    }, 

Fehler browser_adapter.js Snippet 0526: 84Error: Nicht abgefangen (versprochen): Fehler beim Laden von /app.component.html

Antwort

2

Bei Angular2-Webpack,

Vorlage verwenden wie this-

template: require('./app.component.html'), 
    styles: [require('./app.component.css')] 

statt

templateUrl: './app.component.html', 
    styleUrls: ['./app.component.css'] 

sehen, ob das hilft.

+0

Dank! Ich habe es geändert und es funktioniert. Es gibt jedoch weitere Probleme mit dem Web Pack. Wie bündeln und implementieren wir die Angular 2 App mit SystemJS? –

+0

Sie können den Befehl 'npm run bundle' verwenden. – Sanket

+0

Wie würde npm Bündel funktionieren? Wir müssen es explizit konfigurieren. Können Sie erklären? –

6

Eine andere Option ist die Verwendung von awesome-typescript-loader in Kombination mit angular2-template-loader, um alle Ihre Styles für Sie einzubinden, und Sie benötigen keine benötigen.

https://github.com/TheLarkInn/angular2-template-loader

module: { 
    loaders: [ 
     { 
     test: /\.ts$/, 
     loaders: ['awesome-typescript-loader', 'angular2-template-loader'], 
     exclude: [/\.(spec|e2e)\.ts$/] 
     } 
    ] 
    }, 
+0

Dieser Ansatz funktioniert am besten für mich. Es ist jedoch erwähnenswert, dass Sie auch sicherstellen müssen, dass Sie einen geeigneten Loader für HTML/CSS-Dateien haben, wie zum Beispiel den im GitHub-Link vorgeschlagenen 'raw-loader'. –