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

Есть такая форма. При изменении текста в любом и

3-х инпутов в строке, нужно показывать кнопку save
при нажатии - отправлять запрос на сервер.
Вопрос - как я могу узнать изменились ли инпуты или нет?
3 input - это один компонент. показывается через v-for

24 ответов

15 просмотров

<input @input="edited = true" /> <button :disabled="!edited">Save</button> . . . data() { return { edited: false, }; },

4unkur- Автор вопроса
Алексей
<input @input="edited = true" /> <button :disabled...

гениально просто, спасибо

Обычно на такие мелочи забивают болт, но. Можно заморочиться. В mounted забирать строки из всех инпутов, сохранять их хэш, а после изменения генерить новый и сравнивать.

Алексей
В смысле?

Хэш-функция необратима и не позволяет восстанавливать исходный массив информации из символьной строки

ᴅᴍɪᴛʀʏ ᴇᴠɢᴇɴɪᴇᴠɪᴄʜ
Хэш-функция необратима и не позволяет восстанавлив...

let str = 'before'; const hashBefore = hash(str); str = 'after'; if (hash(str) !== hashBefore) alert('Data changed');

Алексей
let str = 'before'; const hashBefore = hash(str); ...

Только в том случае, если брать второй текст и хэшировать его, только так сравнивать сравнивать, как ты и написал в принципе Но хэш нельзя будет вернуть в исходное состояние, если не используешь какой-то алгоритм

Алексей
А я в исходном сообщении предлагал что?

Но то что ты написал все равно немного неверно будет работать

ᴅᴍɪᴛʀʏ ᴇᴠɢᴇɴɪᴇᴠɪᴄʜ
Но то что ты написал все равно немного неверно буд...

Мы сравниваем хэши двух текстов, до и после изменения. Если текст после изменения вернуть в исходное состояние, то их хэши совпадут.

Алексей
Мы сравниваем хэши двух текстов, до и после измене...

Возможно да, а возможно нет) Ситуаций много и все не предугадаешь

ᴅᴍɪᴛʀʏ ᴇᴠɢᴇɴɪᴇᴠɪᴄʜ
Возможно да, а возможно нет) Ситуаций много и все...

Что вы несёте, уважаемый? Хэши идентичных текстов идентичны. Тут не бывает "может быть"

Алексей
Что вы несёте, уважаемый? Хэши идентичных текстов ...

Ваш пароль на сервере хранится в виде хэша и сравнивается с хэшем введённого пароля. Точно также

Anton Permyakov
зачем вам хэши от примитивов вообще?

Чтобы не сравнивать несколько инпутов, а сравнить только лишь общий факт изменения какого-либо поля

Алексей
Чтобы не сравнивать несколько инпутов, а сравнить ...

А нельзя использовать компютед свойства?

Sirnadotte
А нельзя использовать компютед свойства?

Можно, но это механизм который сравнивает, а мы спорим на тему алгоритма)

Алексей
Можно, но это механизм который сравнивает, а мы сп...

Ну у вас готовое из под коробки есть, зачем что то новое изобретать и споритт

Sirnadotte
Ну у вас готовое из под коробки есть, зачем что то...

Тю. Что вас тут смущает? computed: { dataChanged() { return this.hashBefore !== this.hash(this.getAllInputTexts()); }, },

computed:{ edited: initHash !== hash(data) }

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

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

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
6
в JclConsole объявлено так: function CtrlHandler(CtrlType: DWORD): BOOL; stdcall; - где ваше объявление с stdcall? у вас на картинке нет stdcall
Karagy
8
Ребят в СИ можно реализовать ООП?
Николай
33
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
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
Карта сайта