Resolve um problema de padrão de design, que é esperado de um fluxo MVM incluindo v-model.number produzindo uma string quando vazio.
Quando eu insiro um número e excluo o texto da entrada, ele se transforma em uma string no objeto de dados reativos.
Este é certamente um grande problema de usabilidade e elenco, e não vejo o propósito de manter um atributo de string vazio no modelo. Ele deve ser retirado do modelo quando estiver vazio - assim como você cria novos atributos na entrada de texto, deve ser vice-versa.
Este é certamente um problema de padrão de design que deve ser resolvido, não precisando ser implementado no nível do aplicativo todas as vezes, é uma pequena correção que adicionará muito ao VueJS2 e tenho certeza que muitos outros concordarão comigo nisso!
Atualmente, quando a entrada está vazia
v-model.number = "model.number"
model = {
número: ""
}
O que deve fazer quando a entrada está vazia
v-model.number = "model.number"
model = {
}
Acho que o comportamento atual é o esperado.
Porque v-model
é apenas um açúcar de sintaxe para v-bind:value
e v-on:input
, não parece fazer cena que o manipulador de eventos input
exclua uma propriedade de um objeto ( e talvez interrompa a reatividade dessa propriedade).
Vou encontrar uma solução, obrigado :) 👍
Como você viu em # 4742, é o comportamento esperado. o motivo é permitir que o usuário saiba quando nenhum valor é fornecido na entrada . Caso contrário, um 0 pode ser inserido pelo usuário e também uma entrada vazia
@posva Depois de entender melhor a reatividade de Vue, retornar null seria definitivamente a melhor opção em vez de retornar uma string
Comentários muito úteis
@posva Depois de entender melhor a reatividade de Vue, retornar null seria definitivamente a melhor opção em vez de retornar uma string