预加载到Backbone JS的列表

时间:2012-04-18 17:27:15

标签: c# asp.net-mvc-3 backbone.js

我正在尝试开发一个将在页面上加载项目列表的应用程序。每个项目都需要是一个单独的模型才能跟踪相应的属性。到目前为止,我无法在剃刀中成功完成此操作,因为列表已加载,但在回发时返回空白。我认为backbone.js会有所帮助,但我只能创建一个列表,动态添加和删除项目,而不是预先加载它们。我怎么能这样做?

2 个答案:

答案 0 :(得分:1)

使用Backbone,建议(在文档中)通过引导它们到位来加载所有模型(对于集合)。例如,您可以在html中添加脚本标记,执行以下操作:

<script>
  var People = new Backbone.Collection;
  People.reset([{name: "Chris", age:30}, {name: "Josie", age: 27});
  var Projects = new Backbone.Collection;
  Projects.reset([{name: "Programming", due: "Monday"}, {name: "Cleaning", due: "Today"}]);
</script>

...来自Backbone文档,已修改:http://documentcloud.github.com/backbone/#FAQ-bootstrap

或者,你可以获取()内容(发送ajax请求):

<script>
  var People = Backbone.Collection.extend({
    url: "/people"
  })
  People.fetch()
</script>

答案 1 :(得分:0)

我不熟悉Windows世界,但预加载的一种可能方法是简单地让服务器在脚本标签中编写列表,如

<script>
  window.myApp.myList = [
     { name: 'fred' },
     { name: 'mary' }
  ]
</script>

然后您可以使用骨干代码内联或文件加载该列表:

var people = new PeopleCollection(window.myApp.myList)

希望足够清楚。