首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Svelte -路由,当我尝试输入任何url时,我只会得到“没有找到网页”错误。

Svelte -路由,当我尝试输入任何url时,我只会得到“没有找到网页”错误。
EN

Stack Overflow用户
提问于 2021-12-23 00:28:47
回答 2查看 1K关注 0票数 1

使用"svelte-routing“,因为我需要从许多不同的urls加载一个页面,不同的urls作为参数。例如,如果客户端加载到my/ 123中,则需要加载app.svelte组件,同时将123作为参数传递。问题是,无论我在“我的视线/”之后输入什么网址,我都会得到一个“没有找到网页”的页面。App.svelte:

代码语言:javascript
运行
复制
<script script lang="ts">
  import MenuGenerator from './components/MenuSections/MenuGenerator.svelte';
  import { Router, Route } from 'svelte-routing';
</script>

<Router>
  <Route path="/:accomodation" component={MenuGenerator} />
</Router>

MenuGenerator.svelte:

代码语言:javascript
运行
复制
<script script lang="ts">
  export let accomodation: string;
  console.log('hello ', accomodation);
</script>

我已经在https://codesandbox.io/s/svelte-routing-forked-ztddj上测试过这一点,只要在url之后添加任何内容,然后按enter键,控制台中就会显示相同的文本。

编辑:我们有QR代码和NFC标签,它们的urls是设置的,不能更改。这些urls是我的视线/{qr_code}。我需要将所有可能的url重定向到home并作为值传入{qr_code}的路由。

EN

回答 2

Stack Overflow用户

发布于 2021-12-23 18:31:50

有了最后的编辑/注释,用例就更有意义了。

您可以在浏览器中使用window.location.pathname来识别URL中的QR代码。

代码语言:javascript
运行
复制
<script>
  import { Router, Route } from "svelte-routing";
  import Home from "./routes/Home.svelte";
  import { onMount } from "svelte";
  onMount(()=>{
     let qr_code = window.location.pathname.substring(1);  // dump leading '/'
     console.log("qr_code: ", qr_code);
  })

</script>

  <Router>
    <div class="box">
      <Route path="/:id" component={Home} />
    </div>
  </Router>

(编辑)这个答案具体解决了“I需要路由”的需要,该路由可以将所有可能的url重定向到家乡,并作为值传入{qr_code}。

现在看来,这只是部分的要求。(/edit)

票数 0
EN

Stack Overflow用户

发布于 2021-12-23 19:19:25

解决了!

我需要取消注释在我的雪包配置中的一行代码。

代码行是:

代码语言:javascript
运行
复制
//{ match: 'routes', src: '.*', dest: '/index.html' },

请帮我!

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70456492

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档