为什么我的简单视图不起作用

时间:2015-06-27 18:29:19

标签: backbone.js

我有这个JS代码:

$(function() {

  var LinkView = new Backbone.View.extend({
    render: function() {
      this.$el.html(this.model.get('text'));
    }
  });

  var Link = Backbone.Model.extend({
    text: 'message',

    say: function() {
      console.log(this.text);
    }
  });

  var l = new Link();
  l.say();

  var v = new LinkView({model : l, el : 'body'});
  v.render();
});

我正在等待在浏览器上获取“消息”,但在控制台中收到错误TypeError: r.apply is not a function。为什么以及如何解决?

1 个答案:

答案 0 :(得分:1)

请粘贴此内容,new是View中的问题,也做了一些修改。它现在有用..

$(function() {

 var Link = Backbone.Model.extend({

 defaults : {
     text: 'default message'
  },

  say: function() {
  console.log(this.get('text'));
  }
});

 var LinkView = Backbone.View.extend({
  render : function() {
  this.$el.html(this.model.get('text'));
   }
 });

 var l = new Link({text:'custom text message'});
 l.say();

 var v = new LinkView({model : l, el : 'body'});
 v.render();
});