gpt4 book ai didi

javascript - "this"在backbone的listenTo()中指的是什么

转载 作者:行者123 更新时间:2023-12-03 06:27:50 24 4
gpt4 key购买 nike

我写了一些代码...

var View = Backbone.View.extend({
...
initialize: function () {
this.listenTo(collection, 'add', this.addOne)
},
addOne : function (item) {
this // 'this' here refers... what?
})

我读了guide
在本指南中,listenTo 上的“this”指的是“监听器”,但我测试了上面的代码,“this”可能是 View 本身

在“事件和 View ”部分,
“如果使用 ListenTo() 绑定(bind)事件,则在回调中 this 引用监听器。”

最佳答案

以下片段来自文档 http://backbonejs.org/#Events-listenTo

listenToobject.listenTo(other, event, callback) 

告诉一个对象监听另一个对象上的特定事件。使用这种形式而不是 other.on(event,callback,object) 的优点是,listenTo 允许对象跟踪事件,并且可以稍后将它们全部删除。回调将始终以对象作为上下文来调用。

view.listenTo(model, 'change', view.render);

它很好地解释了 this 指的是调用 listenTo 的对象。例如:object.listenTo(...) 将以对象作为上下文,即 this 将是回调中的对象。

上述问题中的代码片段本质上是在 View 对象上调用listenTo,因此this实际上是 View

关于javascript - "this"在backbone的listenTo()中指的是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38566466/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com