我在用脚本
// src/test-index.js
const context = require.context('./src', true, /-test\.js$/)
context.keys().forEach(context)我总是犯错误
> NODE_ENV=test karma start --single-run --no-auto-watch
...
ERROR [karma]: { Error: no such file or directory
at MemoryFileSystem.readFileSync (PROJECT_ROOT/node_modules/memory-fs/lib/MemoryFileSystem.js:107:10)
at MemoryFileSystem.readFile (PROJECT_ROOT/node_modules/memory-fs/lib/MemoryFileSystem.js:297:21)
at doRead (PROJECT_ROOT/node_modules/karma-webpack/index.js:156:26)
at Plugin.readFile (PROJECT_ROOT/node_modules/karma-webpack/index.js:160:3)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)
code: 'ENOENT',
errno: 34,
message: 'no such file or directory',
path: '/_karma_webpack_/test-index.js' }
Error: no such file or directory
at MemoryFileSystem.readFileSync (PROJECT_ROOT/node_modules/memory-fs/lib/MemoryFileSystem.js:107:10)
at MemoryFileSystem.readFile (PROJECT_ROOT/node_modules/memory-fs/lib/MemoryFileSystem.js:297:21)
at doRead (PROJECT_ROOT/node_modules/karma-webpack/index.js:156:26)
at Plugin.readFile (PROJECT_ROOT/node_modules/karma-webpack/index.js:160:3)
at _combinedTickCallback (internal/process/next_tick.js:67:7)
at process._tickCallback (internal/process/next_tick.js:98:9)这里是要旨与我的karma.conf.js和webpack.config.js的链接。我忽略了其他文件,因为这些文件(加上上面的test-index.js )是当前进程中唯一涉及的文件。
节点v6.2.0,NPMv3.8.9(通过nvm安装)。所有依赖项都是在最后几个小时内安装的,所以我使用的是最新版本。
对于什么可能是错误或者我还能尝试什么,有什么想法吗?
发布于 2016-05-23 12:02:45
问题是试图重用我原来的配置作为业力webpack配置密钥。
我通过将业力配置更改为:
webpack: {
module: {
loaders: [
{
test: /\.js$/,
exclude: /node_modules/,
loader: 'babel'
}
]
},
externals: {
cheerio: 'window',
'react/addons': true,
'react/lib/ExecutionEnvironment': true,
'react/lib/ReactContext': true
},
node: {
fs: 'empty'
}
},这里重要的是module对象和node对象(防止无法找到模块"fs“错误)。externals部件是特定于酶的,并且是从它们的酶+业力+ Webpack向导中复制的。另外,关于酶是如何工作的,请注意没有明确的resolve声明,因为webpack自动添加了'.js'和'.json',因为酶在内部需要这两个文件。另一种方法是显式声明json加载程序。
https://stackoverflow.com/questions/37381097
复制相似问题