2017-05-06 58 views
3

輸入代碼herenpm測試初始化​​;的WebPack已使用的結構對象,該對象不匹配API模式

var webpackConfig = require('./webpack.test'); 
 
module.exports = function(config) { 
 
    config.set({ 
 

 
    basePath: '', 
 

 
    frameworks: ['jasmine'], 
 

 
    files: [ 
 
     {pattern: './karma-shim.js', watched: false} 
 

 
    ], 
 

 
    exclude: [ 
 
    ], 
 

 
    preprocessors: { 
 
     './karma-shim.js': ['webpack'] 
 
    }, 
 

 
    webpack: webpackConfig, 
 
    plugins:[ 
 
     'karma-jasmine', 
 
     'karma-chrome-launcher', 
 
     require("karma-webpack") 
 
    ], 
 
    proxies:{ 
 
     "/app/": "http://localhost:3000/src/app" 
 
    }, 
 

 
    reporters: ['progress'], 
 

 
    port: 9876, 
 

 
    colors: true, 
 

 
    logLevel: config.LOG_INFO, 
 

 
    autoWatch: true, 
 

 
    browsers: ['Chrome'], 
 

 
    singleRun: false, 
 

 
    concurrency: Infinity 
 
    }) 
 
}

module.exports = { 
 
    devtool: 'cheap-module-eval-source-map', 
 
    resolve: { 
 
    extensions: ['','.ts','.js'] 
 
    }, 
 

 
    module: { 
 
    loaders: [ 
 
     //以.ts結尾的文件使用 TypeScript loader 
 
     {test: /.ts$/,loader: 'awesome-typescript-loader'}, 
 
     { 
 
     test:/\.html$/, 
 
     loader: 'html' 
 
     }, 
 
     { 
 
     test:/\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico)$/, 
 
     loader: 'null' 
 
     }, 
 
     { 
 
     test:/\.css$/, 
 
     loader: 'null' 
 
     } 
 
    ] 
 
    } 
 
}

然後引發的錯誤。

karma start karma.conf.js

關鍵字的if/then/else語句需要V5選 WebpackOptionsValidationError:無效的配置對象。 Webpack已使用與API模式不匹配的配置對象進行初始化。 - configuration.entry應該是其中的一個: object {:string | [string]}字符串| [string] 彙編的入口點。 - configuration.resolve.extensions [0]不應該爲空。

無法加載「webpack」!

+0

第一個是我的karma.config.js.and第二個是我的webpack.test.js –

回答

0

首先,我沒有看到config文件中提到的任何entey點,它是webpack理解從何處開始所需的。

其次在配置文件中HASE你的決心選項提到的三種解決和第一個是的WebPack不通過刪除空字符串應該解決這個問題

希望這有助於你解決像現在這樣空字符串問題。

+0

感謝您的提醒。它在我刪除空字符串後工作,並且還將「條目」添加到我的配置中。 –

+0

如果它幫助你,請接受答案! –

0

我有同樣的問題,並通過更新karma-webpack包到最新版本解決。

相關問題