我使用webpack
,在构建并运行chrome后显示此错误,我不知道如何解决它.
我的代码非常简单:
{
"devDependencies": {
"babel-core": "^6.23.1",
"babel-loader": "^6.3.2",
"babel-plugin-transform-runtime": "^6.23.0",
"babel-preset-es2015": "^6.22.0",
"babel-runtime": "5",
"css-loader": "^0.26.1",
"html-webpack-plugin": "^2.28.0",
"vue-hot-reload-api": "^2.0.9",
"vue-html-loader": "^1.2.3",
"vue-loader": "10.0.3",
"vue-style-loader": "^2.0.0",
"vue-template-compiler": "^2.1.10",
"webpack": "^2.2.1",
"webpack-dev-server": "^2.4.1"
},
"dependencies": {
"vue": "^2.1.10"
}
}
Run Code Online (Sandbox Code Playgroud) 我使用 apirollup.watch(options)
来构建打字稿。
默认情况下@rollup/plugin-typescript
如果出现编译错误会在控制台打印错误信息,但不会打印文件名和行号,并且watcher.on('event')
不会触发错误事件。
我发现该选项noEmitOnError: true
触发了错误事件watcher.on('event')
,但只有第一次,第二次就抛出错误并退出。
import rollupTypescript from '@rollup/plugin-typescript';
let options: rollup.RollupWatchOptions = {
...
plugins: [
rollupTypescript({
noEmitOnError: true,
tsconfig: path.join(__dirname, `tsconfig.json`),
}),
],
};
let watcher = rollup.watch(options);
watcher.on('event', async (evt) => {
if (evt.code === 'ERROR') {
console.log(evt);
}
});
Run Code Online (Sandbox Code Playgroud)
版本
我如何安全地捕获错误?