2013-01-14 39 views
4

有没有人在新的ember路由器中使用非ID参数?在ember路由器v2中使用非ID动态参数

回到旧版本的路由器,这似乎是一件容易的事情,因为您可以访问路由上的序列化和反序列化方法。实际上,您理论上可以将模型的非ID属性反序列化为params散列,并且可以分别使用路由上的反序列化和序列化方法序列化来自该非ID属性的对象。从我的理解中,序列化和反序列化方法不再公开,这使得处理有点棘手。

回答

8

使用新的路由器,您仍然可以访问序列化和反序列化。

  • deserialize已被重命名为model,它将参数作为参数。如果您从model(或任何其他Promises/A+ compatible promise)返回一个Ember数据对象,其余的钩子将不会运行,直到该对象已加载。
  • serialize仍然被命名为serialize。它将模型(将对象传递给linkTo帮助程序或transitionTo方法)作为其第一个参数,并且应该返回参数的散列值。
+1

再次感谢耶胡达,我相信我现在可能欠你六包装。 – hankang