【问题标题】:Accessing custo attributes inside backbone view在主干视图中访问自定义属性
【发布时间】:2016-01-02 16:40:34
【问题描述】:

我有一个主干视图,想在其中创建自定义属性并从其他视图函数访问这些属性。

我有一个属性数据:

data: {
    response : JSON.parse($.ajax({
        type: 'GET',
        url: "dashboard/chart/chart-data",
        dataType:"json",
        async: false
    }).responseText)

},

在初始化函数中我可以访问 this.data:

initialize: function(ob) {
    var url = ob.route;
    this.render(url);
    console.log(this.data)
    google.load('visualization', '1', {'callback':this.drawChart, 'packages':['corechart']});
},

记录对象 {response: Object}

但是在另一个函数中,drawChart,

console.log(this.data) 给我未定义

console.log(this) 给了我:

Window {top: Window, location: Location, document: document, window: Window, external: Object…}

如何更改 drawChart 内的范围,以便 this 引用主干视图对象,而不是窗口元素。

【问题讨论】:

    标签: javascript backbone.js


    【解决方案1】:

    您需要将drawChart 绑定到视图实例。将this.drawChart.bind(this) 作为google.load 选项中的回调传递。

    【讨论】:

    猜你喜欢
    • 2012-03-04
    • 1970-01-01
    • 2015-01-27
    • 1970-01-01
    • 2013-09-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-03
    相关资源
    最近更新 更多