使用Page.js刷新会发现404 Not Found

时间:2016-05-18 20:23:25

标签: javascript html page.js

我刚刚开始使用page.js,这是一个路由库,我打算用它来制作带有把手的单页应用程序。我将使用这些路线来调用不同的车把模板。到目前为止,这个功能正在发挥作用,并且和我希望的一样快。

我目前遇到一个问题,即刷新页面(按F5)或复制URL,并将其粘贴到新选项卡会给我一个404未找到的错误。它没有调用我在我的应用程序中创建的未找到的页面。

以下代码是:https://github.com/visionmedia/page.js/tree/master/examples/notfound

的副本
<!DOCTYPE html>
<html>
<head>
  <title>Not Found</title>
  <script src="/page.js"></script>
</head>
<body>
  <h1>Not Found</h1>
  <p></p>
  <ul>
    <li><a href="./">/</a></li>
    <li><a href="./about">/about</a></li>
    <li><a href="./contact">/contact</a></li>
    <li><a href="./not-found">/not-found</a></li>
  </ul>
  <script>
    page.base('/notfound');
    page('/', index);
    page('/about', about);
    page('/contact', contact);
    page('*', notfound);
    page();

    function index() {
      document.querySelector('p')
      .textContent = 'viewing index';
    }

    function about() {
      document.querySelector('p')
      .textContent = 'viewing about';
    }
    function contact() {
      document.querySelector('p')
      .textContent = 'viewing contact';
    }
    function notfound() {
      document.querySelector('p')
      .textContent = 'not found';
    }
  </script>
</body>

当我刷新此页面时,我会看到我的localhost的404页面。当我使用链接http://127.0.0.1/notfound/about时,我得到相同的结果。

我的问题是:page.js支持刷新浏览器,还是使用链接访问我的应用程序的特定部分?

似乎我应该问的问题是:Web服务器是否可以将所有导航重定向到加载应用程序的页面?答案是肯定的。

似乎刷新浏览器是一种常见的情况。一个可接受的解决方案也是捕获任何刷新尝试,并将它们重定向到主页面。使用链接访问我的应用程序的特定部分并不是那么重要,但会很好。

0 个答案:

没有答案