javascript - 主干 - 查看没有方法 'get'

标签 javascript backbone.js

大家好!

我刚刚开始学习 Backbone,我的第一个代码有问题。我制作的示例代码有一个按钮,单击该按钮后,会添加一段代码( View ),该代码应该从模型中获取一些默认值。但我收到一条消息:Object function (){return i.apply(this,arguments)} has no method 'get'。这是我的代码:

  var app = {};

  // the model
  app.Answer = Backbone.Model.extend({
    defaults: {
      title: 'Your answer here',
      isAnswer: false
    }
  });

  //the collection
  app.AnswerList = Backbone.Collection.extend({
    model: app.Answer,
    localStorage: new Store("backbone-answers")
  });

  //the view that is added when the button is clicked    
  app.AnswerView = Backbone.View.extend({
    tagName: 'li',
    // template: _.template($('#answer-template').html()),
    template: _.template('<%= title %>: <%= isAnswer %>'),

    events: {
      'click button.destroy': 'remove',
    },

    initialize: function(){
      _.bindAll(this, 'render','remove');
      // this.model.bind('change', this.render());
      this.render();
    },
    render: function(){
      $(this.el).html(this.template({title: this.model.get('title'), isAnswer: this.model.get('isAnswer')}));
      return this;
    },
    remove: function(){
      $(this.el).destroy();
    }
  });

  // the main view
  app.AppView = Backbone.View.extend({
    el: $('#body'),

    events: {
      'click button#insert-button': 'addAnswer'
    },

    initialize: function(){
      _.bindAll(this, 'addAnswer');
      this.ul = $('#content');
      this.collection = new app.AnswerList();
      console.log('initialize');
    },
    addAnswer: function(){
      console.log('append');
      var newAnswer = new app.AnswerView({model: app.Answer});
      $('ul',this.el).append(newAnswer);
    }

  });

  app.appView = new app.AppView();

我是 Backbone 的新手,所以我的问题是:我做错了什么?

感谢您的帮助!

最佳答案

尝试

var answer = new app.Answer();
var newAnswer = new app.AnswerView({model: answer});

关于javascript - 主干 - 查看没有方法 'get',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18536307/

相关文章:

javascript - 如何获取背景大小 :cover; size and percent?

javascript - Angular获取动态生成的html元素的值

javascript - 如果新对象未定义则推送新对象并在可用时忽略

backbone.js - Rails与Underscore.js模板

javascript - 如何在最新的 Parse js sdk (1.6.2) 中实现 Backbone 模型?

javascript - 如何使用 Backbone.js 表示页面的二维网格?

javascript - 当 BackboneJS 中的initialize() 获取时,如何在 render() 中引用集合的数据?

javascript - R shiny 在关闭应用程序/标签之前询问确认

javascript - 从 npm 本地导入 ES 模块依赖项,无需捆绑/转译第一方源

backbone.js - 无法识别主干自定义事件触发器?