如何让 Deno 的 std http file_server监视文件?



我正在运行一个带有简单index.html文件的示例文件服务器,我希望在目录中进行更改时重新运行脚本,我该如何做到这一点?

deno run --allow-net --allow-read --watch https://deno.land/std@0.157.0/http/file_server.ts ./

使用deno run时,可以为监视参数提供一个或多个路径值,以便监视模块图之外的其他文件。例如,使用

deno run —-watch=. module.ts

以递归方式监视当前工作目录中的所有文件。

您可以使用deno help命令来获取有关要使用的命令(在本例中为run(的信息。这就是我如何回答你的问题:

% deno --version
deno 1.26.2 (release, x86_64-apple-darwin)
v8 10.7.193.16
typescript 4.8.3
% deno help run
---snip---
USAGE:
deno run [OPTIONS] <SCRIPT_ARG>...
ARGS:
<SCRIPT_ARG>...
Script arg
OPTIONS:
---snip---
--watch[=<FILES>...]
Watch for file changes and restart process automatically.
Local files from entry point module graph are watched by default.
Additional paths might be watched by passing them as arguments to
this flag.

然而,在您询问的静态文件服务器模块的情况下,重新加载服务器进程并没有真正的好处,因为它只提供静态文件:任何时候您请求静态文件,都会得到最新版本。

也许你在寻找";热/带电重新加载";浏览器客户端中的行为。这是一种不同的模式:页面中的JavaScript和服务器之间的协调工作,而您询问的模块并不支持这一点。

最新更新