我有一个用BackboneJS编写的客户端应用程序。它从服务器中提取数据。服务器上的域对象用Guids标识自己。
在Backbone中,如果Model的id未设置为“null”,则“isNew”返回false。所以,我不能将我的Model的id初始化为Guid.Empty(而不是null)而没有副作用。
当我从服务器获取数据时 - 响应的ID为Guid.Empty。 Backbone自动解析服务器的响应,并触发所有属性的onChange事件,这些属性从“null”变为Guid.Empty。
我想知道是否有人有任何处理这个的经验以及解决这个问题的正确方法是什么。我的Guids应该可以为空吗?我是否覆盖了Guid.Empty的isNew()方法和帐户?在给定条件下,我是否会扼杀onChange事件?
答案 0 :(得分:1)
据我所知,Guid.Empty意味着没有id,它只是一个命名约定?我建议你实现parse方法,并在所有传入的对象中将Guid.Empty更改为null。在我看来,将JS中的空对象保持为null更为自然,而不是后端代表它。