Size: a a a

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

2020 July 15

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
модно ли сделать этот код асинхронным, чтобы он не блокировал действия пользователя?
https://i.imgur.com/D0SdtmP.png
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
canvas.toDataURL("image/png", 0.3)
занимает довольно много ресурсов
источник

ЛХ

Лапки Х in JavaScript — русскоговорящее сообщество
Dmitrii Bikishov
модно ли сделать этот код асинхронным, чтобы он не блокировал действия пользователя?
https://i.imgur.com/D0SdtmP.png
это не поможет, но var замени на const
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
Лапки Х
это не поможет, но var замени на const
что может помочь?
источник

S

Sergey in JavaScript — русскоговорящее сообщество
Доброго дня. Есть вопрос по реакту - допустим, мне нужно сделать панель, через которую пользователь может переключаться между различными инструментами для взаимодействия с изображением: "карандаш", "кисть", "вектор" и т.д. Каждый инструмент при выборе будет изменять поведение холста при клике по нему. Есть ли какой-то более-менее общепринятый подход к реализации такого функционала, или можно просто поставить текущий инструмент в state через Redux, а для холста прописать onClick() для каждого из инструментов с переключателем if/else if?
источник

ЛХ

Лапки Х in JavaScript — русскоговорящее сообщество
Dmitrii Bikishov
что может помочь?
не знаю, а почему ты используешь then вместо await?
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
Лапки Х
не знаю, а почему ты используешь then вместо await?
в данном случае это не принципиально, мне нужно чтобы все вычисления были асинхронны и не блокировали поток
источник

ЛХ

Лапки Х in JavaScript — русскоговорящее сообщество
Dmitrii Bikishov
модно ли сделать этот код асинхронным, чтобы он не блокировал действия пользователя?
https://i.imgur.com/D0SdtmP.png
async function handleSaveImage () {
    const canvas = ...
    if (canvas) {
        const croppedImage = await canvas.toDataURL..
        addUserPhoto(data)
        setSelectedFile(null)
    }
}
источник

ЛХ

Лапки Х in JavaScript — русскоговорящее сообщество
я бы так написал, должно работать. если ты все это обернешь в async который вызовешь без await, блокировать не должно
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
Лапки Х
я бы так написал, должно работать. если ты все это обернешь в async который вызовешь без await, блокировать не должно
ок попробую, спасибо
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
Лапки Х
async function handleSaveImage () {
    const canvas = ...
    if (canvas) {
        const croppedImage = await canvas.toDataURL..
        addUserPhoto(data)
        setSelectedFile(null)
    }
}
по прежнему так, может это у canvas так, что нельзя это сделать асинхронно
источник

ЛХ

Лапки Х in JavaScript — русскоговорящее сообщество
Dmitrii Bikishov
по прежнему так, может это у canvas так, что нельзя это сделать асинхронно
в асинхронную iife оберни внутренности функции, а функцию синхронной сделай
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
https://i.imgur.com/xiTlmQH.png

с async и без все также
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
как можно перед определить размер FormData() ?
а именно  заголовок Content-Length
источник

R

Remite in JavaScript — русскоговорящее сообщество
Dmitrii Bikishov
как можно перед определить размер FormData() ?
а именно  заголовок Content-Length
а что, браузер сам не выставляет?
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
Remite
а что, браузер сам не выставляет?
есть такое, но мне нужно на чанки разбить данные
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
Dmitrii Bikishov
есть такое, но мне нужно на чанки разбить данные
нужно как-то вычислить сколько байтов имеют отправляемые данные
https://i.imgur.com/zfMPVqW.png
источник

K

Konstantin Me in JavaScript — русскоговорящее сообщество
Dmitrii Bikishov
https://i.imgur.com/xiTlmQH.png

с async и без все также
пока эта строка не выполнится, addUserPhoto и всё что ниже не выполнится
источник

DB

Dmitrii Bikishov in JavaScript — русскоговорящее сообщество
Konstantin Me
пока эта строка не выполнится, addUserPhoto и всё что ниже не выполнится
мне нужно както сделать строка с canvas асинхронно выполнялась, после того как это закончится уже дальше идти
источник

λР

λера Розаλин... in JavaScript — русскоговорящее сообщество
Dmitrii Bikishov
модно ли сделать этот код асинхронным, чтобы он не блокировал действия пользователя?
https://i.imgur.com/D0SdtmP.png
Не, он будет run-to-completion всё равно
источник