我正在做一个基于Chaplin-boilerplate的样本proyect,并且工作正常,但是我不明白在获取完成后视图如何呈现,例如使用Backbone可以在事件更改中使用,也可以在回调中使用fetch方法,但是使用chaplinjs怎么做?,是否有使用Backbone中的事件更改?,什么类的Chaplinjs绑定了该事件?绑定情况如何?

class CampaignController extends Chaplin.Controller

  title: 'Campaign'
    index: (params) ->
    campaign = new Campaign()
    @view = new CartView model: campaign


class CartView extends View
  template: template
  template = null
  container: '#cart'
  autoRender: true
  className: 'cart'
  initialize: ->
    super
  render: ->
    super

class Campaign extends Model

  initialize: (attributes, options) ->
    super
    @urlRoot = "http://localhost/store/js/test-data/cart.json"
    @fetch()

最佳答案

在执行@view = new CartView model: campaign的位置,您要将campaign对象作为模型分配给视图。
ChaplinJS View类自动执行以下操作:

if (target === 'model' || target === 'collection') {
  prop = this[target];
  if (prop) {
    this.listenTo(prop, eventName, callback);
  }
}


这应该回答你的问题

关于javascript - 卓别林如何在提取后渲染模型? View 如何知道提取完成?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12533075/

10-12 15:43