gpt4 book ai didi

backbone.js - 如何在不重新渲染 marionette.js 的情况下更新 View

转载 作者:行者123 更新时间:2023-12-01 02:08:08 24 4
gpt4 key购买 nike

如何使用 model.fetch() 更新 View ,即当我获取模型时,不应破坏或重新渲染 View 。它应该通过重置以前的模型来更新新模型。
this.model.fetch({success: this.render.bind(this)});
这段代码正在重新渲染我的 View ..我怎样才能用新模型更新 View

谢谢。

最佳答案

有多种方法可以根据您的需要更新 View 。

  • 如果 View 相当简单,并且只需要在模型获取时自动更新 View ,再次渲染 View 是最简单的(可以使用模型上的 Backbone 同步事件,并且可以使用 Marionette View 以声明方式处理模型事件modelEvents 哈希 - http://marionettejs.com/docs/marionette.view.html#viewmodelevents-and-viewcollectionevents )
    modelEvents: {'sync': 'render'}
  • 如果您在复杂 View 中更改的模型属性很少,您可以通过监听模型属性上的更改事件通过 jquery 直接更新 dom 元素:
    modelEvents: {'change:name':'nameChanged'}, 
    nameChanged: function(model, value){ this.$('#name').val(value);}
  • 如果需要在 View 和模型之间进行双向数据绑定(bind),可以使用像 Backbone.stickit 这样的框架 - https://github.com/NYTimes/backbone.stickit#usage
  • 关于backbone.js - 如何在不重新渲染 marionette.js 的情况下更新 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31083112/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com