问题标签 [backbone-routing]

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 投票
5 回答
43154 浏览

backbone.js - 使用查询字符串导航路线

Backbone.Router.navigate设置testtrue

例如,posts?foo=3fragment 会默认匹配posts路由,还是我必须为此设置另一个路由,例如:posts?*querystring

谢谢

PS:我知道存在骨干查询参数,但我只想知道骨干。

0 投票
2 回答
5157 浏览

backbone.js - 链接中的锚点

鉴于:

  • Tom — 拥有支持 pushState 的现代浏览器
  • Fred——他的浏览器不支持 pushState
  • super.app由 Backbone 提供支持的Web 应用程序

Tom 浏览到存在部分的products/1页面#special-offer

Backbone 是否允许 Tom 与 Fred 共享链接,包括特价部分的锚点: http: //super.app/products/1#special-offer

Fred 会被重定向到http://super.app/#products/1(例如:没有#special-offer)吗?

换句话说,Backbone 是否允许使用锚点?

0 投票
1 回答
309 浏览

html - 如何使用 Backbone.js 处理返回?或者如何在不再次调用 fetch 的情况下呈现较早访问的页面?

我正在使用backbone.js 创建一个Web 应用程序,其中有多个渲染良好的视图。主要问题是处理后退按钮事件。当我按下后退按钮时,早期视图会正确呈现,但遵循调用 fetch() 的相同过程。我不希望调用 fetch() 而是使用接收到的较早数据呈现视图。

有什么办法吗?

0 投票
1 回答
456 浏览

javascript - 具有来自静态 json 文件(只读)的路由的主干应用程序?

我正在构建一个只读主干应用程序,其数据(来自单个静态 json 文件)遵循某种建筑/校园结构。那是:

我目前有一个基本的应用程序设置,显示默认“路线”上每个建筑物的建筑物和楼层列表。

我想使用路由器,以便 APP/#buildingId/ 显示带有“buildingId”的建筑物的楼层列表,而 APP/#buildingId/#floorId 显示相关的房间列表等。

我当前代码的 JSBIN(没有 data.json) - http://jsbin.com/welcome/5850/edit

很多代码可能已经过时,但我尝试了不同的方法来构建模型/集合。这个应用程序永远不会超过只读,这就是我使用静态文件的原因。


类似问题:How to use JSON to power interactive Backbone.js app

提出的解决方案根本不使用路由器。

0 投票
1 回答
99 浏览

javascript - Trouble accessing attributes in the template - all attributes apart from 'name' show error '[attributename] is not defined'

The problem is that all Object attributes apart from 'name' call the error 'id/url/whatever is not defined' in the console when accessed from the template. A template with just 'name' displays fine and shows the correct name, but as soon as I call a different attribute, eg. id or url, it breaks. The object passed to the view is a parsed static JSON file with all items sitting on the same level and accessible from the console with e.g. collectionName.models[0].get('id');

What has me confused is that the name attribute works, as if it is predefined somewhere in backbone/underscore code as a default.

Am I missing something very obvious? Since I can access the model data from the console, I think that there's something wrong with how the view itself handles the data, but I've tried rewriting it in a couple different ways and nothing seemed to make any difference.


All the relevant code.

Passed object format. This is also what collectionName.models[0].attributes; returns in the console.

}

Example template code:

The router code:

Views:

Model code:

Templates & Bootstrap

0 投票
2 回答
131 浏览

javascript - 找出骨干“路由器”实际上得到了什么

试图让骨干路由器工作。有一种情况是什么都没有发生,因此很难查明问题所在。

有没有办法找出路由器实际接收的内容,以便我可以尝试查明我的路由问题?

这是到目前为止的代码:

非常感谢!

0 投票
1 回答
928 浏览

javascript - 使用 Backbone.js 中的 :id 等参数指定根 url 并能够访问它

嗨,我想让我的根 url 有一个如下所示的 :id 段,它应该作为参数传递给与之匹配的每个路由

但现在我得到的 id 是未定义的,即使它是根 url 的一部分。

请帮我

0 投票
1 回答
550 浏览

javascript - Backbone.js 分页,从 Backbone.history.fragment 中删除页码

我想为我用 Backbone 编写的应用程序创建页面导航。

当我想创建页面导航时,我在创建 URL 时遇到了问题。

因为 Backbone.history.fragment 将返回 path/to/1

上面的代码将返回 path/to/1/some_page_number。

虽然我希望它是

路径/到/some_page_number。

我怎么能这样。

提前致谢。

0 投票
1 回答
1411 浏览

backbone.js - 页面加载后,骨干网立即导航到基本 URL

我一直面临主干路由的这个问题,并认为我已经花了足够的时间调查:

这里有两个 url:/ 和 /post/:id。/ 页面通过 /post/:id 链接到各种帖子。当我单击帖子链接时,帖子页面会加载,但骨干网会立即将 url 更改为 /。这不仅看起来很糟糕,而且还会在错误的时间触发路由处理程序。我没有做任何特别的事情......这是我的代码:

同样,在帖子页面加载后立即调用 doHome 函数。显然,这会导致站点导航回主页。我显然可以删除对 window.location 的调用以防止这种情况发生,但 url 仍会更新为根 url,这是不可接受的。

提前致谢!

更新 1:

如果我直接转到“localhost:808/post/:id”,则 url 立即更改为“localhost:8080/”。但是,如果我在私人浏览器窗口中执行完全相同的操作,则不会观察到这种行为。

更新 2:

鉴于我在更新 1 中发现的情况,我发疯了,从头开始:我清除了 4 周的浏览历史记录(叹气),停止本地服务器并清理所有持久会话并重新部署我的应用程序。唉,它奏效了!也就是说,我没有将此列为解决方案,因为它无助于解释究竟发生了什么以及如何解决它。此外,这让我担心我网站的用户会发生这种情况。我无法告诉他们发生了这种情况,即使我这样做了,我也无法告诉他们如何最终修复它(清除 4 周的浏览器历史记录不是一种选择!)。任何人都可以对可能发生的事情有所了解吗?

0 投票
0 回答
395 浏览

backbone.js - 主干 Web 应用程序上的文件结构

我正在开发一个通过骨干网运行并使用路由器的 Web 应用程序。在某些事件成功时,我想将用户重定向到静态成功页面。

将路由 url 路径与静态页面(例如我的成功页面)明确分开的良好命名约定是什么?

我的路由主干对象中的路由对象如下所示: