1

Railscast チュートリアルを実行したところ、すべてが機能しました。バックボーンが実行可能かどうかを確認するために簡単なプロトタイプに取り組んでいますが、何かを台無しにしてしまい、何が間違っていたのかわかりません。バックボーン1にいます。

意見

class Shsh.Views.AssetsIndex extends Backbone.View

template: JST['assets/index']

initalize: ->
  @collection.on('reset', @render, this)

render: ->
  $(@el).html(@template(assets: @collection))
  console.log('rendered')
  this

ルーター

class Shsh.Routers.Assets extends Backbone.Router
  routes: 
    '': 'index'

  initialize: ->
    @collection = new Shsh.Collections.Assets()
    @collection.fetch({reset: true})

  index: ->
    view = new Shsh.Views.AssetsIndex(collection: @collection)
    $('#container').html(view.render().el)

ビューは正常にレンダリングされますが、@assets の長さが 0 に戻ります。コンソールで手順を実行し、ビューを再度レンダリングすると、正しい長さに戻ります。私は何を間違っていますか?

編集:

私も実際にコレクションとモデルを持っています。そこにあるコードはすべて Backbone On Rails によって生成されたボイラープレートです。

4

2 に答える 2

0

私はアホです。Shsh.Views.AssetsIndex の Initialize のスペルが間違っています。

于 2013-09-25T16:36:23.127 に答える