如何复位/重启骨干应用

How to reset/restart backbone application

本文关键字:重启 应用 何复位 复位      更新时间:2023-09-26

我正在使用backbone.js构建一个小测验游戏

一旦你完成了测试,你可以选择重新开始。

我怎样才能做到这一点?我试着回忆初始化函数,以及当你开始游戏时被触发的第一个函数。这只是返回错误。这两个调用都是成功的,但是随后的用于呈现每个问题的函数都失败了。

我想我需要清空我的模型/集合。这是我第一次使用Backbone,我还在努力弄清楚它是如何工作的。

任何帮助,非常感谢。

你可以使用主干路由器(别忘了启动它):

所以在你的游戏视图中,当点击"重新开始"按钮时,你会触发一个事件。这个事件将触发一个函数,将用户重定向到一个新的游戏路线。你也可以在路由器中设置一个函数来关闭旧视图。这对于避免僵尸视图非常重要

。查看

//initialize code
//...
events: {
  'click .startAgainButton':'restart'
}
restart: function(e) {
    e.preventDefault();
    window.location.href = '#/new_game';
}
//rest of view code...

。路由器

//router code
routes: {
    "new_game":"reset"
},
trackView: function (next) {
    if (this.current) this.current.close();
    this.current = next;
},
//kill zombie views
close: function () {
  this.undelegateEvents();
  this.$el.off();
  this.$el.children().remove();
},
reset: function() {
    this.trackView(new View());
}