0

このバックボーン チュートリアルとこのrequire.js チュートリアルに従っています。それらを組み合わせようとしています。

ItemListView を作成すると、エラーが発生します

TypeError: singleItemView is not a function
   model: item

私のコード:

define([
  'jquery',
  'underscore',
  'backbone',
  // Pull in the Collection module from above
  'collections/projects',
  'collections/item',
  'models/projects'

], function($, _, Backbone, projectsCollection, singleItemView, itemViewModel){
  var projectListView = Backbone.View.extend({
    el: $("#page"),

....
....

    appendItem: function(item){
      var itemView = singleItemView({
        model: item
      });
      $('ul', this.el).append(itemView.render().el);
    }

どうすればこの問題を解決できますか?

4

1 に答える 1

1

おそらく必要なのは次のとおりです。

var itemView = new singleItemView({
    model: item
});

singleItemView が何であるかわかりません。collections/itemそれがコレクションであることを示唆しているのに対し、singleItemView という名前はそれがビューであることを示唆しています。それが何であれ、それは「クラス」定義を持つモジュールのように見えます。インスタンス化するだけでよいのではないでしょうか。

于 2012-08-29T01:33:01.083 に答える