0

我正在尝试制作一个用于练习backbone.js 的演示应用程序。

在我的应用架构中,我首先设计了模型,并在其中编写了用于解析 JSON 文件并将这些记录存储在 localStorage 中的代码,然后使用 localStoragehotelsdata的前 10 条记录填充模型的属性。
然后每当我调用时,backbone.view.extend()我都会从模型对象中获取数据。

现在,我想做的是每当我的模型更新时,我的视图也必须根据模型中的新值进行更新。我已经试过了

model.on('change',function())

触发,但是当我在我的页面正在更新view.render()的事件上调用该方法时change,但是在页面上添加记录期间,我的滚动不起作用。

那么,任何人都可以提出一些我可以异步调用该view.render()方法的方法,以便在按下view.render().

简而言之,当我的视图被更新时,页面的滚动必须起作用。

4

1 回答 1

0

我想你有一个问题,我们怎么称呼它?,残酷的渲染:)..

我应该看到你的render()方法来确认它,但我认为在你的渲染中你正在从 DOM 中删除页面的很大一部分,然后再次重新创建它。这可能会导致您的滚动混乱。并且没有任何异步行为可以帮助您。

您应该一个一个地重新创建 View 的子元素,以获得甜美的滚动感觉。

render()(如果我完全困惑,请告诉我们你的方法)

于 2012-05-15T15:30:02.103 回答