169 похожих чатов

Кто-Нибудь знает о таком баге, как мигающий последний символ в

input? в общем примерно после 2-3 введенного символа, последний символ начинает мигать - это означает что он не попал в modelValue и не попадёт туда, пока не появится еще один символ, который теперь будет мигать вместо него. В итоге получаем что каждый последний символ мигает, а модель всегда отстаёт на 1 символ =(

21 ответов

23 просмотра

покажи код

McLotos- Автор вопроса
Anton Permyakov
покажи код

в общем вроде починил. заменил keydown на input и заработало как надо, но есть вторая проблема, которую непонятно как решать. Есть компонент input у которого <input :value="modelValue" @input="$emit('update:modelValue', $event.target.value)" /> Есть компонент text-field, который использует этот v-input <v-input v-model="modelValue"/> И есть форма, которая использует text-field <text-field v-model="login"/> почему-то login работает только в одну сторону, то есть значение login пробрасывается до v-input, но вот в обратную сторону значение пробрасывается только до text-field, а до login не доходит

McLotos- Автор вопроса
Anton Permyakov
покажи код text-field и v-input

login.vue v-text-field( label="Логин" v-model="login" filled ).primary-color text-field.vue .v-text-field v-input( :label="label" v-model="modelValue" ) vinput.vue input( type="text" :id="elemId" :value="modelValue" @input="$emit('update:modelValue', $event.target.value)" )

McLotos
login.vue v-text-field( label="Логин" v-...

что такое modelValue в текст филде?

McLotos- Автор вопроса
Anton Permyakov
что такое modelValue в текст филде?

modelValue это по идее связь с v-model.https://vuejs.org/guide/extras/render-function.html#v-model

McLotos
modelValue это по идее связь с v-model.https://vue...

покажи код компонента скрином

McLotos
screenshot

ты записываешь в v-model modelValue, который тебе приходит пропсом, так делать нельзя нужно передавать пропс в компонент, а наверх эмитить новое значение, как ты делаешь в инпуте ты можешь использовать v-model, но для этого тебе нужно написать компьютед-обертку (поищи по чату get/set) для пропса, чтобы при записи не мутировался пропс, а эмитилось значение

McLotos- Автор вопроса
Anton Permyakov
ты записываешь в v-model modelValue, который тебе ...

да, слышал про такой подходт (get/set), но почему на 1 уровень это работает, а на 2 нет. я думал что механика должна быть одинаковая на всех уровнях

McLotos
да, слышал про такой подходт (get/set), но почему ...

потому что ты пытаешься мутировать пропс

McLotos- Автор вопроса
Anton Permyakov
ты записываешь в v-model modelValue, который тебе ...

там обсуждалась мысль, что может стоит использовать computed, для этой проблемы. Мне не кажется эта идея совсем бредовой, как думаешь?

McLotos- Автор вопроса
Anton Permyakov
так я тебе и написал про компьютед :/

а computed куда вешать? на login? а как? не совсем понятно

McLotos
а computed куда вешать? на login? а как? не совсем...

https://vuejs.org/guide/essentials/computed.html#writable-computed

McLotos- Автор вопроса
Artyom Tuchkov
https://vuejs.org/guide/essentials/computed.html#w...

это да, получается что modelValue в компоненте text-field должен быть вычисляемым? то есть нужно еще одно свойство, которое будет читать modelValue?

McLotos
это да, получается что modelValue в компоненте tex...

modelValue тут ни при чем, он как приходил из пропсов, так и будет приходить а твой новый computed будет просто обращаться к нему в геттере, чтобы взять его значение

McLotos- Автор вопроса
Artyom Tuchkov
modelValue тут ни при чем, он как приходил из проп...

а новый это какой? то есть получается мне не нужно передавать modelValue из text-field в input, а передавать какое-то другое свойство, которое будет вычисляться на основе modelValue в text-field?

McLotos
а новый это какой? то есть получается мне не нужно...

>а новый это какой? который, внезапно, ты создашь сам >а передавать какое-то другое свойство тебе нужно в v-model использовать computed с сеттером, а не modelValue

McLotos- Автор вопроса
Artyom Tuchkov
>а новый это какой? который, внезапно, ты создашь ...

const value = computed({ get() { return props.modelValue }, set(newValue) { props.modelValue = newValue } }) v-input( :label="label" v-model="value" ) так? ругается что нельзя изменять readonly свойства

McLotos
const value = computed({ get() { return prop...

в сеттере нужно эмитить update:modelValue с новым значением

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта