gpt4 book ai didi

coffeescript - Basic CoffeeScript 在运行时不触发事件?

转载 作者:行者123 更新时间:2023-12-01 10:11:36 24 4
gpt4 key购买 nike

我在使用 CoffeeScript 和 Zepto.js 编写简单的 Backbone.js 应用程序时遇到了真正的问题

这是最简单的主干 View ,但事件不会触发。我在控制台中也没有错误?我哪里错了?

#Main view
class AppView extends Backbone.View

constructor: ->
@el = $("#books")
@template = _.template("<div>New Item <a href='' id='addNew'> add new item</a></div>")

events: {
"click" : "createNew"
}

render: =>
@el.html(@template())

createNew : ->
console.log "new"


#Onload
$(document).ready ->
view = new AppView
view.render()

我一直在关注我能找到的 CoffeeScript 和 Backbone 的唯一示例 https://github.com/bnolan/Backbone-Mobile/blob/master/application.coffee

但是,如果我将 super 添加到上面的 View 代码中,我会得到一个未定义的错误,而他的代码不会。

最佳答案

Backbone.View 类有自己的构造函数,可以完成大量工作,您可以覆盖它而不是调用 super。不好。

相反,Backbone.View 使您能够定义自己的构造函数类型函数,称为 initialize。在那里执行所有设置。 Backbone.View#constructor 将调用 initialize

#Main view
class AppView extends Backbone.View

initialize: ->
@el = $("#books")
@template = _.template(
"<div>New Item <a href='' id='addNew'> add new item</a></div>"
)

关于coffeescript - Basic CoffeeScript 在运行时不触发事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4563960/

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