从应用视图引用Backbone视图

时间:2013-01-10 21:59:02

标签: javascript backbone.js backbone-views

嘿所有我对Backbone都很陌生,虽然我已经花了几天时间试图熟悉这个框架,但似乎每次我都开始感觉很舒服我遇到了一个新问题。

我想知道如何引用从我的主appview中呈现的视图。我知道这是一个非常简单的问题,但我似乎无法弄明白。

例如,我有一个简单的视图

    var SubView = Backbone.View.extend({
    //something here including render function
});

然后我在主app视图中渲染该视图

var myApp = Backbone.View.extend({
    render: function{
        var mysubView = new SubView();
        mysubView.render();
    },
    editSomething: function{
        mysubView.remove();
    }
});

当我尝试从主应用程序视图中的函数(editSomething :)引用该视图时,我收到引用错误。

我想要实现的是我有两个包含表单的视图。我希望在调用编辑函数和调用add函数时在两个表单之间切换。但我似乎无法访问已经呈现的视图。

我不想在删除现有视图之前初始化和渲染新视图,因为根据我的理解,我将开始在内存中浮动一堆视图。

1 个答案:

答案 0 :(得分:0)

使用this引用它:

var myApp = Backbone.View.extend({
    render: function{
        this.subView = new SubView();
        this.subView.render();
    },
    editSomething: function{
        this.subView.remove();
    }
});