2016-03-20 5 views
3

Ich versuche eine Komponentenbibliothek in ein angular2/webpack/typescript-Projekt zu integrieren.Webpack Angular2 kann keine TS-Dateien aus der Widgetbibliothek finden

Die Bibliothek wurde bereits in Javascript umgewandelt. Wenn sie jedoch geladen wird, sieht es so aus, als ob webpack stattdessen nach den .ts-Dateien sucht. Hier ist die webpack Konfiguration Ich verwende:

module.exports = { 
    ...... 
    entry: { 

    'polyfills': './src/polyfills.ts', 
    'vendor': './src/vendor.ts', 
    'main': './src/main.ts' 
    }, 
    resolve: { 
    extensions: ['', '.ts', '.js'] 
    }, 
    ..... 
    module: { 
    preLoaders: [ 
     {test: /\.js$/, loader: 'source-map-loader', exclude: [helpers.root('node_modules/rxjs')]} 
    ], 
    loaders: [ 
     {test: /\.ts$/, loader: 'awesome-typescript-loader', exclude: [/\.(spec|e2e)\.ts$/]} , 
     {test: /\.json$/, loader: 'json-loader'}, 
     {test: /\.css$/, loader: 'raw-loader'}, 
     {test: /\.html$/, loader: 'raw-loader', exclude: [helpers.root('src/index.html')]} 
    ] 
    }, 

    plugins: [ 
    new ForkCheckerPlugin(), 
    new webpack.optimize.OccurenceOrderPlugin(true), 
    new webpack.optimize.CommonsChunkPlugin({name: ['main', 'vendor', 'polyfills'], minChunks: Infinity}), 
    new CopyWebpackPlugin([{from: 'src/assets', to: 'assets'}]), 
    new HtmlWebpackPlugin({template: 'src/index.html', chunksSortMode: 'none'}), 
    new webpack.DefinePlugin({'ENV': JSON.stringify(METADATA.ENV), 'HMR': HMR}) 
    ] 
}; 

ich die Anwendung in der webpack dev Server leite. Hier ist die Fehlermeldung:

./~/primeng/components/selectbutton/selectbutton.js 
Cannot find source file 'selectbutton.ts': Error: Cannot resolve 'file' or 'directory' ./selectbutton.ts in C:\data\14-03\angular2-webpack-starter\node_modules\primeng\components\selectbutton 
+0

@BobSponge Ja, so sieht es der Fall –

+0

Try 'devtool' in' hidden-source-map' ändern: 'devtool:" hidden-source-map "' –

+0

@BobSponge nein, das Problem bleibt bestehen. –

Antwort

10

konnte ich diesen Fehler beheben, indem die webpack Config Aktualisierung sourcemaps von primeng auszuschließen:

module.exports = { 
    .... 
    module: { 
    preLoaders: [ 
     ... 
     { 
     test: /\.js$/, 
     loader: 'source-map-loader', 
     exclude: [ 
      helpers.root('node_modules/primeng') 
     ] 
     } 
    ] 
    ... 
    } 
    ... 
}; 
+0

wie in webpack.dev.js Datei zu beheben? Meine laufen in webpack dev enviroment und ich weiß nicht wo ich reparieren soll, hier ist meine webpack.dev.js Datei: http://pastie.org/10875854 – truongnm

+0

Sie sollten nicht brauchen, wenn Sie Ihre 'webpack.common.js' Datei hat dies, seit Sie 'webpackMerge' verwenden, um diese Einstellungen zu übernehmen. –

+0

Nein, es wird in webpack.dev.js ausgeführt. Hier ist meine webpack.config.js, da mein NODE_ENV ist dev, wird es meine webpack.dev.js http://pastie.org/10877975 – truongnm