我想知道Backbone(和类似的)社区是否采用任何标准设计模式作为一个整体,反映了视觉组件的可读性和设计的“最佳实践”,不仅将数据呈现给最终-user还允许编辑其内容。用户可以通过与链接或按钮交互来在读写呈现之间切换。我正在考虑的行为类型的一个很好的例子是Stack Overflow Career的站点,它允许您编辑条目并在读写上下文之间切换。
我看是否有两种方法:
<form>
的模板,并连接显示/隐藏功能。<form>
,并且可以单独渲染。还有其他人吗?在社区中是否存在关于如何接近这种设计模式的偏好?
答案 0 :(得分:0)
如果您在表示层上更改某些内容,则应该更改模型(例如,在某些事件上)。它可以是您视图中的经理。例如:
vare View = Backbone.View.extend({
className: 'panel-body',
template: 'datalibrary/dl-upload-form-file-view',
events: {
'change .someSelector': 'someHandler'
},
initialize : function(){
this.listenTo(this.model,'change','modelChangehalder')
}
someHandler: function(e){
// update model here
},
modelChangehalder : function() {
// some updates on model change
}
一旦你掌握了你的模型,你就可以随心所欲地将其存放到服务器上,保存到存储器或任何你想要的东西。
另请参阅Backbone.Controller项目。 它允许将C添加到Backbones MV *模式。在这种情况下,您将能够管理控制器内部的视图模型关系,在我看来,这是更好的方法。