如何在本地运行 SvelteKit 和 Cloudflare Page?

mcc*_*una 6 svelte vite sveltekit cloudflare-pages

我正在尝试使用 SvelteKit 和 Cloudflare Pages 创建一个新应用程序,但我正在努力以正确的方式在本地运行该应用程序。目前,为了让应用程序在本地运行,我在 2 个不同的终端中运行 2 个脚本:

  1. vite build --watch
    • 这会cloudflare.svelte-kit目录中创建目录
    • vite dev似乎没有创建cloudflare目录,所以我用过vite build
  2. wrangler pages dev .svelte-kit/cloudflare --live-reload
    • 这会启动应用程序

上述方法有效,即它按预期启动应用程序。问题是,我对代码所做的任何更改都会在 3-4 秒后在浏览器选项卡中可见,从 DX 的角度来看,这远远不能让人享受。理想情况下,在本地运行时,任何代码更改都应该在 1 秒左右的时间内在浏览器选项卡中可见。

这是我第一次修改 SvelteKit 和 Cloudflare Pages,所以我确信我错过了一些东西。因此,问题是:应该如何“以正确的方式”在本地运行 SvelteKit 和 Cloudflare Pages 应用程序?“正确的方式”意味着我可以在 1 秒左右看到代码更改的效果,并且我可以使用类似wrangler或 的东西在本地运行应用程序miniflare,以使本地环境尽可能类似于生产环境。

Ps:我检查过https://developers.cloudflare.com/pages/framework-guides/deploy-a-svelte-site/https://www.npmjs.com/package/@sveltejs/adapter-等文档cloudflare, readme.md但他们主要关注如何在生产中运行应用程序Pps:我相信这两个脚本可以使用并发
之类的东西合并为一个脚本,但目前我的重点是在代码更改时获得快速反馈 Ppps:捆绑和修改 javascript 模块本身并不是我的强项之一,所以如果您有任何有用的文章,我们非常欢迎

小智 3

有同样的要求,快速谷歌把我带到这里,没有帮助;然而,事实证明可以在当前的 Cloudflare 文档中找到解决方案:

https://developers.cloudflare.com/pages/platform/functions/local-development/

总之,运行以下命令应该可以解决问题:

npx wrangler pages dev -- npm run dev
Run Code Online (Sandbox Code Playgroud)

  • 这实际上是否使任何 cloudflare 页面功能在本地为您工作?据我所知,像这样运行似乎并不会使“platform.env”在“+page.server.ts”文件中可用...... (4认同)