Решает проблему с шаблоном проектирования, которая, конечно же, ожидается от потока MVM, включая v-model.number, создающего пустую строку.
Когда я ввожу число, а затем удаляю текст из ввода, он превращается в строку в реактивном объекте данных.
Это, безусловно, серьезная проблема с удобством использования и кастингом, и я не вижу цели сохранять в модели пустой строковый атрибут. Он должен быть вырезан из модели, когда она пуста - точно так же, как вы создаете новые атрибуты в текстовой записи, все должно быть наоборот.
Это, безусловно, проблема с шаблоном проектирования, которую следует решить, ее не нужно каждый раз внедрять на уровне приложения, это небольшое исправление, которое многое добавит в VueJS2, и я уверен, что многие другие согласятся со мной в этом!
В настоящее время, когда ввод пуст
v-model.number = "model.number"
model = {
количество: ""
}
Что делать, если ввод пуст
v-model.number = "model.number"
model = {
}
Думаю, текущее поведение вполне ожидаемо.
Поскольку v-model
- это просто синтаксический сахар для v-bind:value
и v-on:input
, похоже, не создается сцена, в которой обработчик событий input
удаляет свойство объекта ( и, возможно, нарушить реактивность этого свойства).
Я найду работу, спасибо :) 👍
Как вы видели в # 4742, это ожидаемое поведение. причина в том, чтобы позволить пользователю узнать, когда во вводе не указано значение . В противном случае пользователь может ввести 0, а также пустой ввод.
@posva После дальнейшего понимания реактивности Vue, возврат null определенно будет лучшим вариантом, чем возврат строки
Самый полезный комментарий
@posva После дальнейшего понимания реактивности Vue, возврат null определенно будет лучшим вариантом, чем возврат строки