问题标签 [page.js]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
712 浏览

polymer - 带有链接的纸张标签显示问题

我正在使用 page.js 编写一个聚合物单页网站,就像在聚合物入门套件中一样。我没有使用纸质菜单进行路由,而是使用纸质标签。

所以路由工作正常,但我不能让纸质标签看起来像纸质标签了。它们看起来像链接,我看不到底部的选择栏。

知道我做错了什么吗?

索引.html

0 投票
1 回答
302 浏览

javascript - 路由中的 Polymer 和 page.js 通配符

我正在使用聚合物启动工具包,并试图访问不需要在页面上有指向它的链接的用户的路线。

路由.html:

在页面上我有:

它匹配具有正确指定 url 的 4 个用户,但我希望路由匹配任何名称,即使没有指向页面的链接。

它将与匹配所有内容的路由'/users/*'一起使用,但如果我不需要,我不想使用它。

0 投票
0 回答
1023 浏览

javascript - 使用 Page.js 刷新会出现 404 Not Found

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

我目前遇到的问题是刷新页面(按 F5)或复制 URL,然后将其粘贴到新选项卡中会出现 404 not found 错误。它没有调用我在我的应用程序中创建的未找到页面。

下面的代码是一个副本:https ://github.com/visionmedia/page.js/tree/master/examples/notfound

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

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

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

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

0 投票
0 回答
104 浏览

internet-explorer - 带有客户端路由器的 Internet Explorer 8,9 重新加载循环(Page.js + history.js)

我正在开发一个项目并使用 page.js 客户端路由器,它使用 History API(项目在所有浏览器中运行良好,IE 10+)。但它在 IE 8、9 上不起作用。当我试图在 IE lt9 中打开我的 Web 应用程序基本路径时,我得到无限重定向循环。我正在使用 HTML5-History-API polyfill(在 PS 中观看链接)。

这是我的 router.js 文件。我将 page.js 和 history.js 包含在 index.html 的头部

当我尝试启动第一页时重定向循环

返回 html 标记但不启动回调函数以呈现整页

我知道历史 API 不支持 IE10-,但就我遵循 page.js 中的所有说明而言,他们说它应该可以与 HTML5-History-API polyfill 一起正常工作。所以现在我在考虑是否有任何解决方案,或者我应该将我的路由器更改为哈希。

就我在网络上的研究而言,它可能与 history.redirect 有关,但是当我正在查看库时,它应该可以正常工作。

PS 由于声誉低,不能添加超过 2 个链接:page.js - visionmedia.github.io/page.js/ HTML5-History-API - github.com/devote/HTML5-History-API

谢谢!

0 投票
1 回答
1011 浏览

javascript - 在 express 中提供静态文件在不同的路由中不起作用,仅在根路由中起作用

我已经对这个问题进行了一些研究,但是所有可能的解决方案都对我不起作用,我不知道为什么。

我正在使用 page.js 和 express 来开发我的小应用程序。当我为我的静态文件提供服务时,我的“/”(根)路径中一切正常。但是当我导航到其他路线时,例如“/client-profile/:user_id”,我的静态文件似乎不起作用,因为我的模板只显示断开的链接,有时什么也不显示。

当我在浏览器中对“/”路径中的一个图像使用“检查元素”工具时,它会显示例如“/image.jpg”,但是当我转到其他路径时(“/client-profile/:user_id” ) 使用相同的图像,它向我显示“/client-profile/image.jpg”

这是我的代码:

server.js(快递)

index.js (pagejs)

(注意:我所有的静态文件,无论是什么类型,都在项目根文件夹中名为“public”的文件夹中)

提前,非常感谢!

0 投票
0 回答
1112 浏览

reactjs - React-router 与 Page.js

我想比较 react-dom-router 与 page.js 在 react.js 中的路由。我使用的例子是:

使用 page.js:

有人告诉我这page.js比 react-router 轻。还有其他相同的偏好吗?

0 投票
1 回答
128 浏览

page.js - 如何检查 url 并使用 page.js 发出路由

是否可以在当前 URL 上发出路由,即让 page.js 在当前路径上调用相应的回调?

用例是如果用户正在登录/退出我的应用程序,我希望 page.js 然后在当前路径上路由,因为当前路由可能会根据身份验证状态显示不同的视图。

我正在使用 Riot.js 路由器,只是切换到利用一些 page.js 功能,但 page.js 似乎缺少 Riot.js 拥有的这个核心功能(请参阅此处)。

ps 目前我的解决方法很简单location.reload(),但这并不理想。

0 投票
1 回答
27 浏览

image - 在应用程序中路由后图像消失

我遇到了一个可能不容易诊断的问题,所以我将描述我遇到的一般问题。

我正在使用前端路由器 (page.js) 在我的应用程序周围进行路由。基本上,每当我在某处路由时,我都会显示应该为该路由显示的组件。我遇到的问题是,当我路由到特定路由然后路由回我之前的位置(例如,通过单击“主页”按钮并路由回主页)时,我的图像不再显示在它们各自的成分。这是一个例子:

在我离开我的主页之前,我有这张图片(svg)显示: 在此处输入图像描述

然后我路由到另一个视图/组件,然后返回。现在我的图片不见了: 在此处输入图像描述

检查开发工具后:

在此处输入图像描述

显然资源存在,但未显示。

同样的事情也发生在其他应该显示在与该路由一起显示的组件中的图像上。

为了进行测试,我在路由远离当前视图时保留了一个组件显示而不是隐藏它,并且当路由回包含它和其他组件的原始视图时,果然图像仍然显示。其他组件中的图像仍然丢失。

同样,我不知道这个问题会属于什么问题,所以我希望就问题可能是什么提出一些一般性建议。

更新。使用后退按钮时也会发生此问题。也许它与历史状态有关?

0 投票
1 回答
149 浏览

polymer - 聚合物铁页pagejs不工作

我正在使用 iron-pages 和 page.js 在polymer.js 中实现一个简单的路由应用程序,但这不起作用。

一切似乎都很好,但这不起作用。

0 投票
1 回答
777 浏览

javascript - AngularJS ui-router ui-sref 导致“Uncaught TypeError: Cannot read property '0' of undefined”错误

我有一个使用 ui-router 的 angularJS 组件,它有 2 个简单的路由状态。

details视图中,我有一个控制器,它获取 PDF 文档,然后使用更改回调中的路由状态$state.go('pdf');

在 pdf 视图中,我有一个ui-sref链接可以返回到详细视图:

间歇性地,当我按下Back to Details按钮时,它会从 page.js 引发错误并且不会更改路由状态。

查找我得到的错误源:(page.js:208)

url 和视图停留在/viewpdf. 如果我等待几秒钟并再次按下后退按钮,它将正常工作。

是什么导致了这种行为,我该如何解决?

编辑 我应该澄清一下,当我提到后退按钮时,我指的Back to Details是视图中的按钮/viewpdf,而不是浏览器的后退按钮。浏览器后退按钮不会出现该错误。