提问人:Lin ku 提问时间:9/22/2023 最后编辑:0xe1λ7rLin ku 更新时间:10/27/2023 访问量:192
Bun 中 --watch 的错误
Bug with --watch in Bun
问:
我在 bun 中运行时遇到了一些问题,它没有实时更新我的页面,我总是必须重新运行它才能看到更改。--watch
我认为这是因为我在 Windows 上使用 Linux,但我不知道这是否只是我的一个错误,因为我在任何地方都没有找到它。 有什么线索吗?
我的代码示例:
import { serve } from "bun";
console.log("I restarted at:", Date.now());
serve({
port: 4003,
fetch(request) {
return new Response("Susdsdp");
},
});
在终端内,我在以下位置重新启动:1695345688409
并且只给我发一次这条消息。
我已经用过了,而且--hot
--watch
答:
在正在使用的 Bun 版本上使用 WSL 的文件系统观察程序可能存在限制或兼容性问题。所以 Id 首先检查一下。
尝试在服务器上运行打字稿文件
Bun.version; // => "0.6.15"
Bun.revision; // => "49231b2cb9aa48497ab966fc0bb6b742dacc4994"
如果需要,请更新包子。npm install bun@latest
检查您的文件路径和名称是否不包含可能干扰 Bun 文件监视功能的特殊字符。另请记住,使用 WSL 时,Linux 文件系统事件并不总是正确传播。这可能会影响依赖于文件系统观察程序的工具,例如 Bun。 因此,你可能想尝试使用以下命令增加 WSL 中的 inotify 监视限制:
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
然后,确保 Bun 具有监视文件和目录的必要权限,并确保项目目录位于 WSL 文件系统中,即不在装载的 Windows 文件系统下,即 ./home/username/project
/mnt/c/Users/username/project
如果你在大型代码库中工作,Bun 可能会尝试查看太多文件。尝试将监视限制为特定目录或文件。
如果上述解决方案都不起作用,您可以考虑在 Bun 的 GitHub 存储库上提出问题。这可能是维护人员没有意识到的 bug,尤其是当它特定于 WSL 环境时。就你而言,鉴于你同时使用了 和 ,问题可能出在 WSL 的文件系统观察程序限制上。--hot
--watch
尝试上面提到的解决方案,尤其是与增加 inotify 监视限制相关的解决方案,因为这是 WSL 环境中其他工具类似问题的常见解决方案。
下一个:未登录即可注册评论失败
评论