0

有什么办法可以找到主干中的渲染视图?我有 4 个视图 Login、Contact、Home 和 About 我想知道当前呈现的是哪个视图。

4

1 回答 1

0

假设您将所有视图渲染到同一个元素中(否则您可以从元素 id 知道视图是什么),您可以在创建视图时向视图添加类似“类”的属性。然后可以通过 view.options 访问该属性。

例如:

var LoginView = Backbone.View.extend();

var loginView = new LoginView({ model: new Backbone.Model, el: 'body', class: 'login' });

loginView.render = function() { var content = 'login'; this.$el.html(content) };

loginView.render();

console.log(loginView.options.class) // 'login'

显然这是一个过于简单的例子,但总体思路应该可行。如果您需要更具体的答案,更多详细信息或代码示例会有所帮助。

如果您还想确保实际呈现视图,只需编写一个方法来检查视图的内容是否符合您的预期

于 2013-10-02T06:11:08.287 回答