Size: a a a

JavaScript — русскоговорящее сообщество

2020 October 22

D

Danila in JavaScript — русскоговорящее сообщество
В реакте или любом другом приложении, где одно отделено от другого эта проблема как раз решается сохранением состояния "куда-то"
источник

ᴀs

ᴀʟɪᴄᴇ ʟ sʜᴇᴠᴛsᴏᴠᴀ💔ᅠᅠ... in JavaScript — русскоговорящее сообщество
Anton Grant
там просто на бэке калькултор в 1500 строк.
🤦‍♀️
источник

D

Danila in JavaScript — русскоговорящее сообщество
Anton Grant
там просто на бэке калькултор в 1500 строк.
1) Создай объект, способный описать всю форму - её поля, значения и так далее.
2) Научись создавать по этому объекту разметку и обработчики
3) Манипулируй объектом, а не разметкой. При измении объекта запускай перерисовку разметки
4) Объект сохрани куда хочешь
источник

AG

Anton Grant in JavaScript — русскоговорящее сообщество
в локал сторадж сохраняю.
источник

AG

Anton Grant in JavaScript — русскоговорящее сообщество
это уже
источник

D

Danila in JavaScript — русскоговорящее сообщество
Это пункт 4 )
источник

AG

Anton Grant in JavaScript — русскоговорящее сообщество
{
             printer1: document.getElementById("printer1").options[document.getElementById("printer1").selectedIndex].text,
             media1: document.getElementById("media1").options[document.getElementById("media1").selectedIndex].text,
             selects: [... document.querySelectorAll("select")].map(e => e.value),
             checkboxes: [...document.querySelector("#calc").querySelectorAll("input[type='checkbox']")].map(e=>e.checked),
             inputs: [...document.querySelector("#calc").querySelectorAll("input")].map(e=>e.value),
             inputsQty: [...document.querySelector("#calc").querySelectorAll("input")].length,
             inputSizeQty: [...document.querySelector("#sizes_box").querySelectorAll("input")].length,
             inputSizes:[...document.querySelector("#sizes_box").querySelectorAll("input")].map(e=>e.value),
             notPro: notPro,}
источник

ᴀs

ᴀʟɪᴄᴇ ʟ sʜᴇᴠᴛsᴏᴠᴀ💔ᅠᅠ... in JavaScript — русскоговорящее сообщество
Danila
1) Создай объект, способный описать всю форму - её поля, значения и так далее.
2) Научись создавать по этому объекту разметку и обработчики
3) Манипулируй объектом, а не разметкой. При измении объекта запускай перерисовку разметки
4) Объект сохрани куда хочешь
А лучше конструктор😒 И сохраняй стейт, а не его пропсы, плиз
источник

D

Danila in JavaScript — русскоговорящее сообщество
Anton Grant
{
             printer1: document.getElementById("printer1").options[document.getElementById("printer1").selectedIndex].text,
             media1: document.getElementById("media1").options[document.getElementById("media1").selectedIndex].text,
             selects: [... document.querySelectorAll("select")].map(e => e.value),
             checkboxes: [...document.querySelector("#calc").querySelectorAll("input[type='checkbox']")].map(e=>e.checked),
             inputs: [...document.querySelector("#calc").querySelectorAll("input")].map(e=>e.value),
             inputsQty: [...document.querySelector("#calc").querySelectorAll("input")].length,
             inputSizeQty: [...document.querySelector("#sizes_box").querySelectorAll("input")].length,
             inputSizes:[...document.querySelector("#sizes_box").querySelectorAll("input")].map(e=>e.value),
             notPro: notPro,}
Даже не буду пытаться разобраться что там )
источник

R

Roman in JavaScript — русскоговорящее сообщество
NgRx рулит йопта
источник

D

Danila in JavaScript — русскоговорящее сообщество
Roman
NgRx рулит йопта
Да, но нет
источник

R

Roman in JavaScript — русскоговорящее сообщество
Danila
Да, но нет
Да, но да
источник

D

Danila in JavaScript — русскоговорящее сообщество
Roman
Да, но да
Всё что касается ангуляра вообще вроде как рулит, но нет
источник

AP

Anton Permyakov in JavaScript — русскоговорящее сообщество
Roman
Да, но да
нода, да
источник

D

Danila in JavaScript — русскоговорящее сообщество
В данном случае можно обойтись простейшим pubsub на пять строк и чем-то типа lit-html или просто тупо перерендеривать целиком
источник

R

Roman in JavaScript — русскоговорящее сообщество
Anton Permyakov
нода, да
Дано, да
источник

ᴀs

ᴀʟɪᴄᴇ ʟ sʜᴇᴠᴛsᴏᴠᴀ💔ᅠᅠ... in JavaScript — русскоговорящее сообщество
Anton Grant
{
             printer1: document.getElementById("printer1").options[document.getElementById("printer1").selectedIndex].text,
             media1: document.getElementById("media1").options[document.getElementById("media1").selectedIndex].text,
             selects: [... document.querySelectorAll("select")].map(e => e.value),
             checkboxes: [...document.querySelector("#calc").querySelectorAll("input[type='checkbox']")].map(e=>e.checked),
             inputs: [...document.querySelector("#calc").querySelectorAll("input")].map(e=>e.value),
             inputsQty: [...document.querySelector("#calc").querySelectorAll("input")].length,
             inputSizeQty: [...document.querySelector("#sizes_box").querySelectorAll("input")].length,
             inputSizes:[...document.querySelector("#sizes_box").querySelectorAll("input")].map(e=>e.value),
             notPro: notPro,}
неплохо, а если  у тебя будет 1000 элементов printer[порядковое число], они так же будут записываться в этот огромный объект?
источник

D

Danila in JavaScript — русскоговорящее сообщество
Ну или взять preact и не мучать себя
источник

AG

Anton Grant in JavaScript — русскоговорящее сообщество
Danila
Даже не буду пытаться разобраться что там )
Попытка создать объект, собственно стеёты я по отдельным вещам прописываю в него, но понял, что не всё. Пошёл дальше мучить
источник

AG

Anton Grant in JavaScript — русскоговорящее сообщество
ᴀʟɪᴄᴇ ʟ sʜᴇᴠᴛsᴏᴠᴀ💔ᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠᅠ
неплохо, а если  у тебя будет 1000 элементов printer[порядковое число], они так же будут записываться в этот огромный объект?
не, принтер1 и printer2 - больше нет, но вообще - да.
источник