8
我正在寻找骨干js中的模式以在只读和编辑视图之间切换。如果视图的触发器是视图外部的,那么没有问题,我可以创建适当的视图(只读或编辑)并呈现它,但在我的情况下,编辑视图的触发器将位于只读视图内。在骨干js中只读视图和编辑视图之间切换
例如让我说我正在显示处方,默认情况下它处于只读模式,悬停时显示编辑图标。点击这个编辑图标,只读视图现在应该被编辑视图取代。什么是实现这一目标的最佳途径。以下是我正在考虑的几个选项
- 只有一个PrescriptionView带有编辑图标和编辑模式所需的所有表单字段。它还具有逻辑,可以将视图从只读模式更改为基于编辑触发器的编辑模式。
- 有两个视图PrescriptionReadView和PrescriptionEditView。 ReadView将具有编辑图标,并通过onclick将editview替换为readview。
我倾向于#2,但不知道如何以优雅的方式实现它。对此有任何想法都会有所帮助。
感谢 扎菲尔
您可以通过Backbone.Router隧道切换逻辑,“编辑”按钮只会激活一个路由,该路由的处理程序会告诉PrescriptionView切换到编辑模式; PrescriptionEditView中的保存/取消操作可以激活“显示处方”路线。 –
@mu - 只要让子视图触发PrescriptionView正在侦听的事件,是否有任何好处? – lecstor
@lecstor:这主要是一个你想要的地方,以及你是否希望URL中的编辑/显示状态;如果显示/编辑只是页面的一小部分,那么你可能根本就不想混淆URL。从简单的无路线方法开始就很好,而且有道理,但请记住路线方法,以便您了解您可以使用哪些工具。 –