如何使用 Backbone 控制器提供页面服务
Backbone 按以下方式在其控制器中定义路由。这是否意味着网站的每个页面都必须有它的副本?或者当用户到达第一页时必须加载每个脚本才能使其工作?
var Workspace = Backbone.Controller.extend({
routes: {
"help": "help", // #help
"search/:query": "search", // #search/kiwis
"search/:query/p:page": "search" // #search/kiwis/p7
},
help: function() {
...
},
search: function(query, page) {
...
}
});
Backbone define routes in its Controller in the following fashion. Does this mean every page of the site must have a copy of it? Or that every script must be load when the user reach the first page to make it work?
var Workspace = Backbone.Controller.extend({
routes: {
"help": "help", // #help
"search/:query": "search", // #search/kiwis
"search/:query/p:page": "search" // #search/kiwis/p7
},
help: function() {
...
},
search: function(query, page) {
...
}
});
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这是一个 hashbang 路由器,那些不是真实的页面。网址如下所示:
它用于路由单页 Web 应用程序。因此,您只提供一个页面,然后通过从 JSON Web 服务获取数据来呈现其他页面。
Backbone.js 允许您路由到页面内客户端上的子页面。这意味着您可以将 URL 更改为可图书标记状态,并且当您重新加载页面时,backbone 将重新加载页面的该“部分”。
此路由只能在页面内部使用,不应跨越多个页面。
为此,您应该使用服务器端 MVC 框架。
It's a hashbang router, those's aren't real pages. The urls look like:
It's used to route single page web apps. So you only serve one page and then render other pages by getting your data from a JSON web service.
Backbone.js allows you to route to sub pages on the client inside a page. This means you can change your URL to a book markable state and when you reload the page, backbone will reload that "section" of the page.
This routing should only be used inside a page and should not span across multiple pages.
You should be using your serverside MVC framework for that.