Javascript 刷新页面以查看内容

Javascript 刷新页面以查看内容,javascript,backbone.js,coffeescript,Javascript,Backbone.js,Coffeescript,我已经使用主干网创建了一个Rails应用程序,但遇到了一个小问题,但很烦人。当用户转到他的个人资料,然后返回frontpage时,frontpage是空的,我必须刷新它才能显示主干视图的内容 在我的Movieseat.Routers.Movieseat中,我有: routes: '': 'index' initialize: -> @movieSeats = new Movieseat.Collections.Movieseats() @movieSeats.fetch()

我已经使用主干网创建了一个Rails应用程序,但遇到了一个小问题,但很烦人。当用户转到他的个人资料,然后返回frontpage时,frontpage是空的,我必须刷新它才能显示主干视图的内容

在我的
Movieseat.Routers.Movieseat
中,我有:

routes:
  '': 'index'

initialize: ->
  @movieSeats = new Movieseat.Collections.Movieseats()
  @movieSeats.fetch()

  @searchResults = new Movieseat.Collections.Moviesearch()

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

你知道为什么用户必须刷新才能看到frontpage吗?

我不知道CoffeeScript,但是
fetch()
方法需要一个成功的回调,在那里你可以确保集合已经加载。在你的索引中你正在通过
@movieSeats
集合创建一个新的视图,但是此时该集合可能还没有加载。请尝试以下操作:

{
  routes: {
    '': 'index'
  },

  initialize: function() {
    this.movieSeats = new Movieseat.Collections.Movieseats();
  },

  index: function() {
    var self = this, view;

    this.movieSeats.fetch({
      success: function(collection) {
        view = new Movieseat.Views.MovieseatsIndex({ collection: collection })
        $('#container').html(view.render().el)
      }
    });
  }
}

但是,您可能希望“引导”您的收藏,如主干文档上所示:

您的
索引
路由器被调用了吗?配置文件页面是通过主干处理的吗?不,配置文件页面只是一个Rails页面。不
view=new Movieseat.Views.MovieseatsIndex(集合:@movieSeats)$('#container').html(view.render().el)
这将创建一个新的视图实例,并在加载索引页时将其呈现给容器?是否调用了
索引?一切都设置好了吗?我试过你的方法,但当我重新访问主页时,它仍然没有显示视图。我将尝试使用
bootstrap
方法。