这期内容当中小编将会给大家带来有关怎么在Typescript中利用nodemon实现项目热更新,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。
nodemon+tsc:
这个方法很简单,首先通过tsc将我们的ts文件编译到dist目录下,然后再通过nodemon直接运行dist目录下的文件即可。至于ts的输出目录相关配置可在tsconfig.js中设置。
tsc && nodemon --watch dist/index.js
但是这种方式有个缺点,就是nodemon只监听了dist目录,可能有时候你修改了源码并不能触发热更新,另外还有个问题就是多了一个dist目录中转,感觉不爽。
nodemon+ts-node:
命令如下:
nodemon -e ts,tsx --exec ts-node ./index.ts"
大概意思就是监听文件增加ts、tsx两种文件类型,使用ts-node运行index.ts文件。
当然,上述参数是设置在命令行中的,也可以在nodemon.json中设置:
{
"verbose": false,
"debug": false,
"exec": "ts-node ./index.ts",
"ignore": [
"mochawesome-report",
"node_modules",
"./test",
"**/*.d.ts",
"*.test.ts",
"*.spec.ts",
"fixtures/*",
"test/**/*",
"docs/*"
],
"events": {
"restart": ""
},
"watch": ["./app", "./configs", "./app.ts"],
"ext": "ts tsx",
"inspect": true
}
如果有使用到tsx文件,记得在tsconfig.json文件中将jsx取消注释,否则编译时可能会提示错误。
除了上述两种方法,今天无意中试了下直接使用nodemon来执行ts文件,发现控制台报错了,原谅我是个英语渣,不明白具体说了什么,但是看到了ts-node的身影,果断安装ts-node再试,竟然成功了。
nodemon ./index.ts
但是这样修改了ts文件不会热更新,可以在nodemon.json文件中将ext属性添加上ts就可以了。
{
"restartable": "rs",
"ignore": [".git", "node_modules/**", "client/*", "dist", ".cache", "logs"],
"verbose": true,
"execMap": {
"": "node",
"js": "node --harmony"
},
"events": {
"start": "",
"crash": "",
"exit": "",
"restart": ""
},
"ext": "js json ts tsx",
"watch": ["./**"],
"env": {
"NODE_ENV": "development",
"PORT": "3002"
},
"legacy-watch": false
}
上述就是小编为大家分享的怎么在Typescript中利用nodemon实现项目热更新了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注亿速云行业资讯频道。
亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。