ember.js observers query-parameters

ember.js - Ember.observe() devuelve la devolución de llamada dos veces cuando se usa con query-params



observers query-parameters (1)

http://jsbin.com/vowup/2

Si hago clic en cambiar a aleatorio, el programa inicia sesión en la consola dos veces.

Por alguna extraña razón, funciona bien cuando se establece la variable de revisión en la cadena, pero se registra dos veces para el número o cualquier otro tipo de variable


Cambie su código a esto y la respuesta será clara:

toggleHistory: (function() { console.log(this.get("revision")); }).observes("revision")

Verá resultados como:

0.7038348997011781 "0.7038348997011781"

Tus números están siendo coaccionados a cadenas. Eso es causado por esta línea:

queryParams: ["revision"]

El sistema de consulta escucha los cambios y convierte cada nuevo valor en cadena, por lo que podría aparecer como parte de la URL. Es por eso que obtienes dos eventos modificados.