Empecé por este camino porque @click disparó antes de que se actualice el modelo v (ejemplo aquí: http://jsfiddle.net/5sH6A/308/ )
así que no sabía cuál era el valor. Pensé en probar mi lógica en un reloj: función pero encontré el problema a continuación.
1.0.16
http://jsfiddle.net/5sH6A/303/
Haga clic en la casilla de verificación y elija cancelar
La casilla de verificación debe estar vacía
La casilla de verificación se muestra marcada mientras los datos vinculados son falsos
Esto parece ser acerca de la compatibilidad.
Funciona bastante bien con Edge 12 e IE11 en Windows 10, pero falla con Chrome 49.0.2623.110
También se rompe con firefox 41 en open suse jump
Establecer el mismo valor dentro de un observador siempre es una mala idea...
Diría que la forma más fácil de lidiar con esto es simplemente no usar v-model
. De todos modos, está tratando de controlar el valor usted mismo: http://jsfiddle.net/yyx990803/5sH6A/310/
Muy tarde para esta fiesta, pero sigue siendo un tema vivo para mí después de todos estos años. Mi solución:
Cuando use una entrada de casilla de verificación con v-model, use el controlador onchange @change . Funcionará tanto para IE como para navegadores razonables.
Extrañamente, si usa una casilla de verificación de modelo v y @click , el valor de su atributo de modelo v (por ejemplo, "flgChecked") se invertirá en el controlador de clic de Chrome/Firefox. Es decir, será falso cuando haya hecho clic en la casilla de verificación en la posición de encendido, será verdadero cuando haya hecho clic en la posición de apagado. Entonces, al revés. Pero IE en realidad informa "correctamente". Entonces . . . usa @cambiar.
O tal vez me estoy perdiendo algo.
Comentario más útil
Muy tarde para esta fiesta, pero sigue siendo un tema vivo para mí después de todos estos años. Mi solución:
Cuando use una entrada de casilla de verificación con v-model, use el controlador onchange @change . Funcionará tanto para IE como para navegadores razonables.
Extrañamente, si usa una casilla de verificación de modelo v y @click , el valor de su atributo de modelo v (por ejemplo, "flgChecked") se invertirá en el controlador de clic de Chrome/Firefox. Es decir, será falso cuando haya hecho clic en la casilla de verificación en la posición de encendido, será verdadero cuando haya hecho clic en la posición de apagado. Entonces, al revés. Pero IE en realidad informa "correctamente". Entonces . . . usa @cambiar.
O tal vez me estoy perdiendo algo.