在用webpack 4升级了我的角度项目之后,我在使用业力运行单元测试时出错了。
at-加载器使用类型记录中的typescript@2.7.2和演示-app-app\src\tsconfig.json中的"tsconfig.json“。 装载机检查是从一个单独的过程开始的. 加载程序检查完成了1509个错误的加载程序:子进程处理请求失败: TypeError:无法读取未定义at Object.isExternalModule externalModuleIndicator at Object.getAllDependencies Object.getAllDependencies at Object.getAllDependencies (demo-app\node_modules\typescript\lib\typescript.js:76133:80) at processEmit的属性“externalModuleIndicator”(demo-app\node_modules\awesome-typescript-loader\src\checker\runtime.ts:451:24) at demo-app\node_modules\awesome-typescript-loader\src\checker\runtime.ts:602:6 at Object.send (demo-app\node_modules\awesome-typescript-loader\src\checker\runtime.ts:48:6) at Checker.req (demo-app\node_modules\awesome-typescript-loader\src\checker\checker.ts:100:15)在(demo-app\node_modules\awesome-typescript-loader\src\checker\checker.ts:105:15) at Checker.emitFile at transform (demo-app\node_modules\awesome-typescript-loader\src\index.ts:132:26) at transformationFunction (demo-app\node_modules\awesome-typescript-loader\src\index.ts:74:40) at编译器(demo-app\node_modules\awesome-typescript-loader\src\index.ts:85:21) (demo-app\node_modules\awesome-typescript-loader\src\index.ts:16:12) at LOADER_EXECUTION (demo-app\node_modules\loader-runner\lib\LoaderRunner.js:119:14) at runSyncOrAsync (demo-app\node_modules\loader-runner\lib\LoaderRunner.js:120:4) at iterateNormalLoaders (demo-app\node_modules\loader-runner\lib\LoaderRunner.js:229:2)在(demo-app\node_modules\loader-runner\lib\LoaderRunner.js:218:10) iterateNormalLoaders & at;-最后几个GCs > 136168 ms:标记扫描1255.3 (1435.8) -> 1242.3 (1435.8) MB,893.2 /0.0ms分配失败.137084 ms:标记扫描1242.3 (1435.8) -> 1242.3 (1435.8) MB,915.6 /0.0ms分配失败.138055 ms:标记扫描1242.3 (1435.8) -> 1248.2 (1408.8) MB,970.0 /0.0ms最后采用gc。139026 ms:标记扫描1248.2 (1408.8) -> 1254.0 (1408.8) MB,971.0 /0.0ms最后采用gc。 <- JS堆栈跟踪-> ==== JS堆栈跟踪========================================= 致命错误: CALL_AND_RETRY_LAST分配失败-内存中的JavaScript堆
Json包:
出色-打字-装载机:5.0.0-0业力-webpack:2.0.4 webpack:4.1.1
var webpack = require('webpack');
var helpers = require('./helpers');
module.exports = {
devtool: 'inline-source-map',
resolve: {
extensions: ['.ts', '.js']
},
mode: 'development',
module: {
loaders: [
{
test: /\.ts$/,
loaders: ['awesome-typescript-loader', 'angular2-template-loader']
},
{
test: /\.html$/,
loader: 'html-loader'
},
{
test: /\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico)$/,
loader: 'null'
},
{
test: /\.css$/,
include: helpers.root('src', 'app'),
loader: 'raw'
},
{
enforce: 'post',
test: /\.(js|ts)$/,
loader: 'istanbul-instrumenter-loader',
include: helpers.root('src'),
exclude: [
/\.(e2e|spec)\.ts$/,
/node_modules/
]
}
]
},
plugins: [
new webpack.ContextReplacementPlugin(
/angular(\\|\/)core(\\|\/)@angular/,
helpers.root('./src'),
{}
)
]
};请注意,我可以运行我的角度项目,没有任何问题,只有UT配置是错误的。
发布于 2019-01-15 09:23:48
使用“npm更新”命令进行更新。这解决了我的上述错误问题。
发布于 2018-04-08 11:42:04
更新到typescript@2.8.1可以解决'externalModuleIndicator‘问题(但可能会破坏其他东西)
发布于 2018-06-04 14:03:03
我能够通过用awesome-typescript-loader替换ts-loader来解决类似的问题。
在这里也有过类似的讨论
https://stackoverflow.com/questions/49468616
复制相似问题