You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Svelte组件中通过window.location.href跳转至静态HTML页面?

从Svelte组件跳转至外部HTML文件的解决方法

不需要额外配置路由,直接通过window.location.href即可实现跳转,核心是确保路径指向正确。结合你的项目结构,分两种场景说明:

开发环境

Svelte开发服务器默认以svelteProject目录作为服务根路径,而example.html位于其上级的project目录下。在App.svelte中使用上级相对路径即可跳转:

<script>
  function navigateToExample() {
    window.location.href = '../example.html';
  }
</script>

<button on:click={navigateToExample}>打开example.html</button>

这里的../表示从服务根路径(svelteProject)向上回到project目录,直接定位到目标HTML文件。

生产环境

当你打包Svelte项目后,默认会在svelteProject下生成dist文件夹。根据部署方式调整路径:

  • 如果将dist内的所有文件直接移至project目录下(与example.html同级),路径改为./example.html;
  • 如果保留svelteProject/dist的结构,部署后Svelte应用的访问路径为/svelteProject/dist/,则路径需改为../../example.html(向上两级回到project目录)。

关键注意点

  • 跳转外部静态HTML不属于Svelte路由的管理范围,无需配置SvelteKit或其他路由工具;
  • 可以通过在浏览器控制台输入console.log(window.location.pathname)查看当前页面的路径,以此验证相对路径的正确性。

内容的提问来源于stack exchange,提问作者Clemens Rosenow

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.03 13:25:22