In termini specifici di AgularJS:
$ viewValue
Valore stringa effettivo nella vista.
$ modelValue
Il valore nel modello, che il controllo è associato a.
Quindi, se si dispone di un input, il valore al suo interno è sotto forma di stringa. Se si visualizza il valore del modello o il valore interpolato come markup, {{ myInt }}
o {{ 5 + 5 }}
, verrà visualizzato come stringa.
Questo perché HTML è una lingua di testo, mentre JS è un linguaggio di funzioni e valori. Pertanto, per gestire questa doppia modalità per il doppio binding, AngularJS utilizza il servizio $ viewValue per il valore di "visualizzazione" di un campo modello e utilizza lo $modelValue
per tracciare il valore "effettivo".
Il valore "display" non deve mai essere "indefinito", in quanto l'interpolazione di un modello non definito non deve generare un errore. e il valore "display" non dovrebbe mai essere un numero. Quindi, prima che sia una stringa formale (interpolazione di $modelValue
), è un NaN
.
fonte
2014-05-25 00:29:26