我正在使用Meteor构建应用程序,并且无法理解路由和视图之间的关系。我让路由器正常工作,但在调用新视图后我感到很困惑。
我使用App.navigate吗?我可以打电话给:
var newView = new MyView();
在正确的路由器功能内?这是我正在使用的代码(有效),我的应用程序只有两个页面 - 索引页面和项目视图:
var Aphorism = Backbone.Router.extend({
routes: {
"saying/:id": "showSaying"
},
showSaying: function (id) {
alert('Saying id ' + id + '.');
}
});
答案 0 :(得分:1)
您可以定义路由器中存在的路由。除非你有一个非常复杂的应用程序,否则你通常只需要其中一个。
然后您在应用程序中连接链接和按钮,以便在单击时执行app.navigate。您可以通过视图执行此操作,也可以使用jQuery等方法自行完成,这取决于您。
例如:
<div id="myButton">Click me!</div>
var myView = Backbone.View.extend({
el: "#myButton",
events: {
"click": "go"
},
go: function() {
myRouter.navigate("/someUrl", {trigger: true});
}
});