为什么我的骨干视图只在IE中没有引用它的模型(返回undefined)?

时间:2011-11-21 18:02:55

标签: backbone.js coffeescript

我有一个简单的骨干视图,在初始化时传递模型(我正在使用Coffeescript):

questionView = new Quizback.Views.QuestionView( {model: @current_question} )

对应的视图如下所示:

class Quizback.Views.QuestionView extends Backbone.View
  tagName: 'div'

  initialize: ->
    alert @model.constructor.name

  render: =>
    $(@el).html("<h3>Question #{@model.get('id')}</h3><p>#{@model.get('text')}</p>")
    return @

警报当然是用于调试的。这段代码在最近的safari和chrome上运行良好,但是IE 8似乎没有引用视图初始化的模型。由于某种原因,this.model返回undefined。是否有IE不支持的backbone / js的特殊方面?

2 个答案:

答案 0 :(得分:2)

据我所知,IE不支持fn.name。看看https://developer.mozilla.org/en/JavaScript/Reference/Global_Objects/Function/Name - 这是非标准的。

答案 1 :(得分:0)

看起来像另一个双箭头问题。在定义=>方法时,请尝试使用双箭头initialize