Backbone js Routes / Views关系

时间:2013-01-16 02:13:46

标签: backbone.js meteor backbone-views backbone-routing

我正在使用Meteor构建应用程序,并且无法理解路由和视图之间的关系。我让路由器正常工作,但在调用新视图后我感到很困惑。

我使用App.navigate吗?我可以打电话给:

var newView = new MyView();

在正确的路由器功能内?这是我正在使用的代码(有效),我的应用程序只有两个页面 - 索引页面和项目视图:

var Aphorism = Backbone.Router.extend({
  routes: {
    "saying/:id": "showSaying"
  },
  showSaying: function (id) {
    alert('Saying id ' + id + '.');
  }
});

1 个答案:

答案 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});
  }
});