koa 实践问题汇总

一、ts-node支持别名路径解析

typescript 配置 paths 别名后,import 相关模块,ts-node 运行报错,报错信息如下:

Error: Cannot find module '@/<your module path>'

解决方法
安装 tsconfig-paths 模块:

npm i -D tsconfig-paths

tsconfig中添加配置:

"ts-node": {
  "require": ["tsconfig-paths/register"],
  "files": true
}

又或者在执行 ts-node 时带上参数 -r tsconfig-paths/register

ts-node -r tsconfig-paths/register '<your code path>'

如此,依赖 ts-node 运行 .ts 代码时,才能正确解析以别名引用的模块。

二、像前端一样在浏览器调试后端代码

运行命令添加 inspect 参数,并指定调试监听地址:

node --inspect=0.0.0.0:9229 src/<your app>.ts

运行项目后,在浏览器(edge/chrome)里打开 chrome://inspect,依次执行以下操作:

  • 勾选“Discover network targets”并配置 inspect 指令指定的地址;

  • 稍等片刻页面会侦测到项目运行,并在 “Remote Targets” 中列出;


    chrome://inspect
  • 点击“Inspect”地址,在随后弹出的 DevTools 中进入“源代码”选卡,在次级选卡“节点”里找到“file://”,其中列出了开发目录及源码;

  • 找到需要调试的文件,按需操作调试即可。


    DevTools

如果把参数 inspect 替换为 inspect-brk,这会让项目运行开始便暂停进程,只有开发者手动“恢复脚本执行”项目才会继续。

以上就是在访问项目页面的同时即刻排查后端的脚本的方法,一个指令和少许的设置带来的是前后端无缝调试的丝滑体验。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容