На данный урок ушло несколько часов работы, но зато самостоятельной! Немного редьюсер по-другому сделал, но рад что удалось сделать самому! Спасибо за урок! 🚀
Спасибо за контент!! Много полезной и новой для меня инфы !!! Я с одним моментом парился прогресс загрузки файлов , не как не загружало файлы , уже код с гита сверял мало ли , но как оказалась в экшене uploadReducer в case ADD_UPLOAD_FILE нужно не просто в массиве разворачивать старое состояние и action.payload , а вот такое провернуть { . . .state, files: [ . . .state.files, { . . .action.payload } ] } и только после этого прогресс загрузки файлов сработало , стронно конечно . Может кто столкнулся с этим вот мой выход с этой ситуаций
привет, тоже эта ошибка была с мутацией стейта, из за state.files.progress, так же поборол, в процессе упростил в экшене uploadFile вот onUploadProgress: data => { uploadFile.progress = Math.round((100 * data.loaded) / data.total); dispatch(changeUploadFile(uploadFile)); }
Можно ещё добавить тут одну штуку приятную.. Последние файлы добавлять вверху, а не в самый конец, чтоб их было видно.. Для этого массив загружаемых файлов выводим в обратном порядке... в файле Uploader.jsx - добавить reverse() после files.map() {files.map(file =>
@@devorer77 лучше сделать отдельный экшн, который целиком обнуляет файлы, но впринципе эта кнопка просто закрывает loader, она поидее и не должна все удалять
выбивает, когда закрываю окошка прогресса, не могу понять в чем проблема... даже скопировал код из гита , не помогает... 12 | export default function userReducer(state = defaultState, action) { > 13 | switch (action.type) {
При этом есть ещё одна проблемка ... С добавлением файлов. Если загружать тот же файл второй раз - то мы добавляем его в Uploader ещё до того, как filecontroller с сервера пришлёт нам сообщение "file already exists" и соответственно у нас появится дубль названия в Uploadere (которого мы загружаем на сервер с %, но на диске не сохраняем... ) при это на сервере появляется ошибка code: 'ERR_HTTP_HEADERS_SENT' и всё умирает (((
Прохожу ваш контент с удовольствием и очень благодарен за такой труд🙏
Спасибо за столь приятные слова, значит все старания не зря)
огромное спасибо! я в восторге от того как это просто и в то же время круто!
Да, всё на самом деле просто, главное понимать основу))
Спасибо огромное , как всегда твои видео радуют )
Благодарю!)
На данный урок ушло несколько часов работы, но зато самостоятельной! Немного редьюсер по-другому сделал, но рад что удалось сделать самому! Спасибо за урок! 🚀
Отличный и полезный курс. Спасибо!
Спасибо за курс!!!
Спасибо за контент!!
Много полезной и новой для меня инфы !!!
Я с одним моментом парился прогресс загрузки файлов , не как не загружало файлы ,
уже код с гита сверял мало ли , но как оказалась в экшене uploadReducer в case ADD_UPLOAD_FILE нужно не просто в массиве разворачивать старое состояние и action.payload , а вот такое провернуть { . . .state, files: [ . . .state.files, { . . .action.payload } ] } и только после этого прогресс загрузки файлов сработало , стронно конечно .
Может кто столкнулся с этим вот мой выход с этой ситуаций
привет, тоже эта ошибка была с мутацией стейта, из за state.files.progress, так же поборол, в процессе упростил в экшене uploadFile вот onUploadProgress: data => {
uploadFile.progress = Math.round((100 * data.loaded) / data.total);
dispatch(changeUploadFile(uploadFile));
}
Спасибо тебе большое
Для меня, Тимур - номер один в этом сегменте ютуба. Только счастья, много счастья хочется ему пожелать лайк
Можно ещё добавить тут одну штуку приятную..
Последние файлы добавлять вверху, а не в самый конец, чтоб их было видно..
Для этого массив загружаемых файлов выводим в обратном порядке...
в файле Uploader.jsx - добавить reverse() после files.map()
{files.map(file =>
).reverse()}
...а мы продолжаем разработку и пилим комментарии и лайки!
спасибо!
круто
только, по моему, при такой логике, после загрузки фалов и закрытия общим крестиком - все файлы остаются в компоненте Uploader?
надо єкшену hideLoader принимать массив files и с помощью forEach каждому єлементу сделать removeUploadFile. Верно?
@@devorer77 лучше сделать отдельный экшн, который целиком обнуляет файлы, но впринципе эта кнопка просто закрывает loader, она поидее и не должна все удалять
можно еще проще
case HIDE_UPLOADER: return {...state, isVisible: false, files:[]};
выбивает, когда закрываю окошка прогресса, не могу понять в чем проблема... даже скопировал код из гита , не помогает...
12 | export default function userReducer(state = defaultState, action) {
> 13 | switch (action.type) {
При этом есть ещё одна проблемка ... С добавлением файлов.
Если загружать тот же файл второй раз - то мы добавляем его в Uploader ещё до того, как filecontroller с сервера пришлёт нам сообщение "file already exists" и соответственно у нас появится дубль названия в Uploadere (которого мы загружаем на сервер с %, но на диске не сохраняем... ) при это на сервере появляется ошибка code: 'ERR_HTTP_HEADERS_SENT' и всё умирает (((
Крутой урок!👍 Несмотря на кажущуюся простоту.
И как же мне было "весело" реализовывать прогресс в RTK Query 😅
может кто-нибуть получает такую ошибку : "progress" is read-only ? и как её решить?
ttt
Отличный и полезный курс. Спасибо!