Mau*_*ala 5 javascript node.js typescript chokidar
我的主要代码在 chokidar 监视文件夹下,当文件更改时它会发出一个事件
主要脚本是这样的
const fileName = "test.ts";
import(fileName).then((t: any) => {
t.default();
});
Run Code Online (Sandbox Code Playgroud)
这是文件 test.ts
export default () => {
console.log("aaa");
};
Run Code Online (Sandbox Code Playgroud)
更改test.ts时需要重新导入文件,例如,我需要这个
启动脚本
输出“aaa”
将 test.ts 从 "console.log("aaa")" 更改为 "console.log("bbb")"
输出“bbb”
解决方案是使用decache,完整代码是这样的(使用chokidar文件夹观察器)
const folder = chokidar.watch("./myFolder", {
ignored: /(^|[\/\\])\../,
persistent: true,
});
folder
.on("add", (fileName: string) => {
const mod = require(fileName)
mod.default();
.on("change", (fileName: string) => {
decache(fileName);
const mod = require(fileName)
mod.default();
})
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
452 次 |
| 最近记录: |