Кто не может запустить проект в 2023 году с ошибкой opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ], library: 'digital envelope routines', reason: 'unsupported' В файле package.json исправьте 2 строки scripts": { "start": "react-scripts --openssl-legacy-provider start", "build": "react-scripts --openssl-legacy-provider build",
Дай бог тебе здоровья и счастья во всем добрый человек.Единственный во всем русском ютубе, кто смог по человечески обьяснить как работать с redux, без заумных словечек итд.Жаль второй лайк нельзя поставить,с одного аккаунта,тогда на втором поставлю тебе второй лайк,контент просто must have.Желаю удачи на ютубе и в профессиональной деятельности.Огромное спасибо ✌✌✌✌😉😉😎😎🐱🚀🐱🚀🐱
Отличный и великолепный курс, все прекрасно и понятно рассказано. На данный момент, единственный курс по работе Redux + React который видел ( у Владилена Минина есть отдельный курс только по Redux, но это не совсем то, что большинство ищет ) Однозначно лайк и подписка!
Очень понравилось, спасибо большое! Обожаю Ваши видео за то, что в них есть структурированный подход, а не набор действий или фактов по теме. Помогло разобраться и начать использовать redux, низкий Вам поклон 🙏 p. s. кто не смотрел js, очень советую
Спасибо огромное автору этого курса!!! До этого курса я прошел уже порядка 4ех других на тему react-redux, и после всех этих курсов я все ровно понимал redux не очень хорошо, но после этого курса redux стал для меня таким легким и понятным, будто туман рассеялся. Еще раз спасибо.
Василий, удачи Вам в продвижении канала! Очень качественно преподнесен материал! Объяснили и более старые подходы и современные! Все доступно и разложено по полочкам!
@@stackdev Оставьте в описание что для подключение Redux-devtools-extension 1:42:18 нужно сначала установить Redux-DevTools гугл хром расширение , вы не предупреждали и новички которые учат первый раз могут сами об этом не догадаться , а так спасибо за курс!
@@stackdev Почему у меня ошибка 'apply' не знаете случайно , я подключил redux-devtools-extension в index.js и вылезла ошибка и приложение сломалась? 1:42:18
Автору огромное спасибо и побольше таких роликов. Все рассказано очень круто, подробно, а главное с кучей реальных кейсов. Не встречал еще такое кол-во actions, reducers в одном видео, еще и с правильной структурой, на которую можно ориентироваться✌👏👍💪 P.S. у кого выпадает ошибка в компоненте Spin, то замените слово Loader на любое, которое предлагается в ошибке. Как я понял, библиотека обновилась, такой компонент не выгружается. Например на , import { Rings } from "react-loader-spinner"; ...и будет все работать =)
Мой субъективный отзыв такой. Сам курс и норм и не норм. Понятно что он не глубокий, и без конкретных объяснения почему в одном случае так, в другом по другому, когда как лучше и что использовать. Вопросов было много по курсу, на все вопросы я нашёл ответы в документации. Документация кстати хорошая и понятная, поэтому мне странно почему автор не уточняет многие важные моменты описанные в документации. я просмотрел до конца. Сейчас смотрю уже другой курс, но тот курс тоже без разъяснений но более глубокий и затрагивает больше тем. Короче. В общих чертах прямо с нуля подойдёт. оценка 6 из 10. мне курс зашёл так или иначе. Спасибо большое за труд. лайк .
Просто топ-контент, спасибо! P.s. в последнее время медиум просто разрывает от статей "редакс не нужен", "почему вы должны перестать использовать редакс" и всё в этом духе.
Спасибо! На самом деле, в небольших собственных приложениях без Redux можно легко обойтись. Другой вопрос - то что в коммерческой разработке - всегда используется Redux или что-то подобное...
@@vladimirpuzey713 если планируется тестирование то выбор очевидно redux. Очень наглядно разницу mobx и redux объясняет Дмитрий Лаврик, если интересно будет, загуглите
Забавно, в документации черным по белому пишут что асинхронные действия такие как общение с сервером реализуются как middleWare во время создания createStore, нет упорно продолжают тыкать в непонятные для людей места, создавать макароны из кода, и учить людей как неправильно оформлять redux!!!
Для удаления конечно лучше использовать метод для массивов filter, он просто вернет новый массив с объектами, прошедшими проверку, и не придется вырезать какие то части. Когда массив небольшой еще ладно, но если там большой массив с множеством вложенных объектов, то читать такой код становится трудно.
Василий спасибо огромное за видео! Очень нравится что Ваша версия максимально свежая и подача хорошая. Хотелось бы спросить, когда будет React Redux TypeScript, уж очень сейчас его везде просят этот TS
для dispatch свойство type является обязательным? я могу добавлять в объект другие свойства и мы их видим, но как только я убираю type. или меняю на types. сразу ошибка.
type - обязательное свойство, определяющее имя экшна, по которому далее будет происходить поиск. .. Или я глухой или ты забыл упомянуть что оно обязательное
1:30:50 Как вариант можно сделать проще: case COMMENT_UPDATE: { return { ...state, comments: state.comments.map(c => c.id === action.data.id ? {...c, text: action.data.text} : c) } }
подскажите на минуте 57:50 вы делаете const { inputReducer } = state. что значит эта запись ? state это обьект из котрого мы забираем useReducer? откуда мы это берем можете подсказать из какого файла? спасибо
Спасибо за курс. Все понятно и все по делу, толковые примеры. Если можно один вопрос. А можно же массив (1:28:56) nextComments создать через map у меня в одну стоку получилось, делает тоже самое. Или я что то недопонял? Почему именно slice? const nextComments1 = comments.map(item => data.id === item.id ? data : item ); Хотя мой вопрос не про redux.
1:28:18 Можно упростить и сделать все через map const newComments = comments.map(item => item.id === data.id ? data : item) // return { ... state, comments:[ ...newComments ]}
@@romankiashko5435 Просто часто вижу - на других каналах - подобный материал публикуется именно - в виде таких длинных видео. Решил провести эксперимент
@@stackdev Короткие видео хорошо делят контент на логические блоки. С другой стороны в одном видео сразу ясен объем материала. Я привык к обоим форматам, смотрите что лучше влияет на продвижение)
@@tofikhasanov6372 ну на данный момент, писать на чистом редаксе вообще не айс..мы на работе активно тулкит юзаем с санками, и вообще отлично. Но я думаю если ты попадаешь на легаси компоненты, то чтоб не впадать в панику, надо чуть знать нативный редакс))))
Хорошо, понятно, интересно, советую. Я вот только не понял зачем использовать thunk, мы разве не можем просто создать файл api и там прописать асинхронные запросы, без всяких санок, я пока не очень понимаю для чего они нужны, я делал интернет магазин на редаксе и без санок обошёлся, в чём их необходимость может кто вразумит? А про видео - самое главное, что здесь без извращений, некоторые начинают показывать тебе какие-нибудь финты, как они умеют, как будто специально, шоб не пониль и так ну лан.. здесь просто и понятно
у кого не запускается базовий проект меняем в package.json : "start": "react-scripts start" на "start": "react-scripts --openssl-legacy-provider start" "build": "react-scripts build" на "build": "react-scripts --openssl-legacy-provider build"
спасибо ! подскажите , сейчас уже другой подход используется?? не могу понять ! все уроки год назад и меньше и уже неактуально! обновления что каждый месяц, как научится тогда
Большое спасибо за видеоурок. Помог разобраться с Redux в React новичку. Одно но. Как только в видео вы перешли к Redux Thunk, я естественно тоже смотря видеоурок продолжил писать код, как у вас. В последствии, у меня возникла ошибка: TypeError: Cannot read properties of undefined (reading 'apply'). Я ознакомился с вашим репозиторием с готовым кодом, скачал проект оттуда, скачал все npm зависимости и запустил его, получив ту же самую ошибку. Код в вашем проекте я уже не менял вообще. Так и не смог исправить на данный момент эту ошибку. Можете помочь?
Очень круто все объяснено. Единственный момент я не понял зачем подключали Thunk, запросы на сервак работают у меня и без этого. в видео нет объяснения
Redux Thunk это middleware библиотека, которая позволяет вам вызвать action creator, возвращая при этом функцию вместо объекта. Функция принимает метод dispatch как аргумент, чтобы после того, как асинхронная операция завершится, использовать его для диспатчинга обычного синхронного экшена, внутри тела функции. У вас может работать но всё таки нужно учитывать ПенТест, + если работает это не факт тому что всё идёт правильно.. всегда нужно искать ошибки)
Спасибо большое за работу, видеоролик отличный! У меня возникло непонимание устройства работы редакса. Судя по табличке action должен хранить в себе какую-то логику по работе с данными, но в примере action фактически просто указывает на логику, прописанную внутри reducer`а через свой тип. Получается что сами action`ы хранятся внутри reducer`а и мы должны просто на них указывать, или я не правильно понял суть?
action - обычный объект в котором указан тип + данные (если надо) - в любом компоненте - вы ""дергаете" нужный action - есди надо добавляете данные. точка - reduсer - видит тип action - и действует в соответствии с логикой
не понял когда мы добавили комбайнер({}). это необходимо для работы провайдера? не понимаю как это сработало и почему мы сначала делали через стор файл. а потом он стал нам не нужен каким то образом. без комбайнера не работает?
Большое спасибо за видео. Василий, подскажите пожалуйста, как решить проблему при разворачивании npm i? В исходниках в package.json eslint 7.11, а у меня разворачивается 8.29. Из-за этого не запускается npm start
Ссылки на проекты автора в github. Рабочий репозиторий: github.com/VasilyMur/React_Redux_Base Готовый проект: github.com/VasilyMur/React_Redux_Complete
начинающий и тот кто не работал с менеджерами состояний раньше навряд ли поймет. бездумно разделили все на файлы, зачем, для чего, какие это дает преимущества?
С НУЛЯ? Спасибо, был бы признателен за пояснение, как именно устанавливается React и React-Redux на ПК, а то тут уже с пол пути все (не с нуля, явно) 👍
Охх, щас поглядим что за конфетка ошибка npm run start - error:0308010C:digital envelope routines::unsupported - мне помогло снизить версию node с 18.9.0 до 14.8.0 (может работают и поздние хз), всё получилось
const { id } = action const { comments } = state const newComments = comments.filter(res => res.id !== id) return { ...state, comments: newComments } это все что нудно для удаления =) просто фильтрануть массив и вернуть новый, после чего также вернуть state и в комменты перекинуть newComments. Зачем нам индекс юзать и слайс после, у нас и так есть ID для поиска. В вашем случае мы делаем масло маслянное, так как через айдишник который сам по себе уникален, мы ищем индекс зачемто и после опять режем все ето дело.
@@stackdev проблема решилась созданием проекта с нуля: просто создал новый проект и вручную перекопировал данные из файлов в репозитории и картинку, затем из файла с зависимостью закинул Loader и uniqid. Полностью следовал инструкциям: сначала установил зависимости, затем redux \ react+redux, проект отказывался запускаться. Первая строчка из терминала: "Error: error:0308010C:digital envelope routines::unsupported"
@@stackdev да! Шел по шагам. Дошел до 51 минуты.... Понял, что ничего не понимаю, пото начал смотреть снова... И ничего не понял ещё раз.....многие действия говорите, пишем так, тут так... Почему? Зачем? Я понимаю, что я смотрю это бесплатно :) и грех жаловаться, но говорю, как есть!
не зна, вроде то что нужно, но такой смотрю на это и думаю, чёт какой-то проект сам по себе странный, ну то есть это не какая-то интересная штуковина, ну хз, ну посмотрим
Кто не может запустить проект в 2023 году с ошибкой
opensslErrorStack: [ 'error:03000086:digital envelope routines::initialization error' ],
library: 'digital envelope routines',
reason: 'unsupported'
В файле package.json исправьте 2 строки
scripts": {
"start": "react-scripts --openssl-legacy-provider start",
"build": "react-scripts --openssl-legacy-provider build",
Святой человек 😢
Всех благ тебе, здоровья! Спасибо!!! 🙏
И правда святой человек!
Благодарю, добрый человек
Василий, это самый блестящий урок по redux, который я видел, изучая эту тему за последние 2 недели. Спасибо вам огромное. Вы умница и молодец))
Спасибо! очень приятно:)
просто супер, использовал полученные знания при тестовых задания, в итоге взяли на работу) СПАИБО БОЛЬШОЕ)
Очень круто! поздравляю вас!
Большое спасибо за курс, кратко и ясно!
Полность redux по курсу конечно не выучишь, но после обьемного курса помогает вспомнить все основные моменты.
Василий, спешу поблагодарить за подробно и доходчиво изложенный материал, спасибо большое!
Спасибо большое!
Шикарный видеоурок!
У Вас талант преподавателя! Благодарю Вас за Ваш полезный и важный труд!
Желаю Вам успехов в Вашей деятельности! 😊👍
Спасибо большое!
Дай бог тебе здоровья и счастья во всем добрый человек.Единственный во всем русском ютубе, кто смог по человечески обьяснить как работать с redux, без заумных словечек итд.Жаль второй лайк нельзя поставить,с одного аккаунта,тогда на втором поставлю тебе второй лайк,контент просто must have.Желаю удачи на ютубе и в профессиональной деятельности.Огромное спасибо ✌✌✌✌😉😉😎😎🐱🚀🐱🚀🐱
Спасибо большое!
Спасибо огромное! Я пересмотрела кучу видосов, перечитала десятки статей, но только посмотрев это видео поняла redux!!!
Спасибо!)
Отличный и великолепный курс, все прекрасно и понятно рассказано. На данный момент, единственный курс по работе Redux + React который видел ( у Владилена Минина есть отдельный курс только по Redux, но это не совсем то, что большинство ищет ) Однозначно лайк и подписка!
Спасибо!
Наглядный пример это лучший способ научить кого-то redux. Спасибо большое!
Спасибо!
Наконец-то я понял Redux!! Василий, огромное спасибо за курс!!!
Спасибо за коммент:)!
Очень и очень полезный контент, спасибо огромное, Василий!
Спасибо за поддержку!
Очень понравилось, спасибо большое! Обожаю Ваши видео за то, что в них есть структурированный подход, а не набор действий или фактов по теме.
Помогло разобраться и начать использовать redux, низкий Вам поклон 🙏
p. s. кто не смотрел js, очень советую
Спасибо!
Спасибо огромное автору этого курса!!! До этого курса я прошел уже порядка 4ех других на тему react-redux, и после всех этих курсов я все ровно понимал redux не очень хорошо, но после этого курса redux стал для меня таким легким и понятным, будто туман рассеялся. Еще раз спасибо.
Спасибо за комментарий!
Это накопительный эффект)
@@КлимСомов-х6с точно
Василий, удачи Вам в продвижении канала! Очень качественно преподнесен материал! Объяснили и более старые подходы и современные! Все доступно и разложено по полочкам!
Спасибо большое!
Василий, я аплодирую вам стоя! Объяснили доступным языком и помогли мне систематизировать уже имеющиеся знания. Спасибо большое за ваш труд!
Спасибо за коммент! Рад, что вам это было полезно.
Очень хорошо и понятно донесли достаточно сложную информацию
Спасибо!
Отличный урок. Информация выдается поэтапно, последовательно и наглядно.
Спасибо!
@@stackdev Оставьте в описание что для подключение Redux-devtools-extension 1:42:18 нужно сначала установить Redux-DevTools гугл хром расширение , вы не предупреждали и новички которые учат первый раз могут сами об этом не догадаться , а так спасибо за курс!
Спасибо ! Отличный материал ! Подписка однозначно !
Спасибо!
@@stackdev Почему у меня ошибка 'apply' не знаете случайно , я подключил redux-devtools-extension в index.js и вылезла ошибка и приложение сломалась? 1:42:18
Спасибо. Комментарий для продвижения в ТОП!
Спасибо!
крутейший вообще урок, самый понятный по redux
Спасибо!
УРАаааааааааа! наконец-то)
плейлист было бы удобнее, но если темы хорошо разобраны то нет особенности большое видео или нет!
Бесценная информация и доступная подача :) Спасибо!
Спасибо!
Классный мини-курс. Автор, специалист своего дела! С удовольствием смотрю Ваши уроки.
Спасибо большое!
Автору огромное спасибо и побольше таких роликов. Все рассказано очень круто, подробно, а главное с кучей реальных кейсов. Не встречал еще такое кол-во actions, reducers в одном видео, еще и с правильной структурой, на которую можно ориентироваться✌👏👍💪
P.S. у кого выпадает ошибка в компоненте Spin, то замените слово Loader на любое, которое предлагается в ошибке. Как я понял, библиотека обновилась, такой компонент не выгружается. Например на , import { Rings } from "react-loader-spinner"; ...и будет все работать =)
Спасибо!
Огромное спасибо за урок. Все крайне понятно, то что нужно!!!
Спасибо!
Мой субъективный отзыв такой. Сам курс и норм и не норм. Понятно что он не глубокий, и без конкретных объяснения почему в одном случае так, в другом по другому, когда как лучше и что использовать. Вопросов было много по курсу, на все вопросы я нашёл ответы в документации. Документация кстати хорошая и понятная, поэтому мне странно почему автор не уточняет многие важные моменты описанные в документации. я просмотрел до конца. Сейчас смотрю уже другой курс, но тот курс тоже без разъяснений но более глубокий и затрагивает больше тем. Короче. В общих чертах прямо с нуля подойдёт. оценка 6 из 10. мне курс зашёл так или иначе. Спасибо большое за труд. лайк .
путь самурая смотрел?
@@ArtemMindsurfer нет.
Спасибо за отличные видео !
Спасибо за поддержку!
большое спасибо !
Огромная благодарность за ваш труд
Спасибо!
Спасибо большое за годный и нужный контент!!!)))
Спасибо большое!
Блин, топово конечно, спасибо автору за работу!
Спасибо!
спасибо Вам за это видео!
Спасибо!
СПАСИБО! СПАСИБО БОЛЬШОЕ!
Спасибо за отличный контент)
Спасибо большое! для начинающих самое то)
Только постоянный переход с темного фона на белый, это какой то ужас...
Просто топ-контент, спасибо!
P.s. в последнее время медиум просто разрывает от статей "редакс не нужен", "почему вы должны перестать использовать редакс" и всё в этом духе.
Спасибо!
На самом деле, в небольших собственных приложениях без Redux можно легко обойтись.
Другой вопрос - то что в коммерческой разработке - всегда используется Redux или что-то подобное...
@@stackdev а что насчёт mobx-a? в последнее время, всё чаще вижу рекомендацию использовать его вместо redux-a.
@@vladimirpuzey713 Не знаю - никогда не использовал.
@@vladimirpuzey713 если планируется тестирование то выбор очевидно redux. Очень наглядно разницу mobx и redux объясняет Дмитрий Лаврик, если интересно будет, загуглите
Спасибо все понял!
Забавно, в документации черным по белому пишут что асинхронные действия такие как общение с сервером реализуются как middleWare во время создания createStore, нет упорно продолжают тыкать в непонятные для людей места, создавать макароны из кода, и учить людей как неправильно оформлять redux!!!
Хороший урок, полезный
Спасибо!
Для удаления конечно лучше использовать метод для массивов filter, он просто вернет новый массив с объектами, прошедшими проверку, и не придется вырезать какие то части. Когда массив небольшой еще ладно, но если там большой массив с множеством вложенных объектов, то читать такой код становится трудно.
А еще лучше все данные преобразовать в ключ/значение - и по ключю выдергивать нужный элемент....... Мой пример мне кажется более наглядным.....
@@stackdev Да конечно, много есть разных способов, кому как удобнее) В любом случае, спасибо за ролик, посмотрел на одном дыхании)
@@vadimniziev5489 Спасибо!
Спасибо отличное видео
Спасибо!
Василий спасибо огромное за видео! Очень нравится что Ваша версия максимально свежая и подача хорошая. Хотелось бы спросить, когда будет React Redux TypeScript, уж очень сейчас его везде просят этот TS
Также хотелось бы добавить о продвинутом редаксе =)
Спасибо! Будет - но позже:)
Спасибо!!
для dispatch свойство type является обязательным? я могу добавлять в объект другие свойства и мы их видим, но как только я убираю type. или меняю на types. сразу ошибка.
type - обязательное свойство, определяющее имя экшна, по которому далее будет происходить поиск. .. Или я глухой или ты забыл упомянуть что оно обязательное
1:30:50
Как вариант можно сделать проще:
case COMMENT_UPDATE: {
return {
...state,
comments:
state.comments.map(c => c.id === action.data.id ? {...c, text: action.data.text} : c)
}
}
подскажите на минуте 57:50 вы делаете const { inputReducer } = state. что значит эта запись ? state это обьект из котрого мы забираем useReducer? откуда мы это берем можете подсказать из какого файла? спасибо
Спасибо за курс. Все понятно и все по делу, толковые примеры. Если можно один вопрос. А можно же массив (1:28:56) nextComments создать через map у меня в одну стоку получилось, делает тоже самое. Или я что то недопонял? Почему именно slice?
const nextComments1 = comments.map(item => data.id === item.id ? data : item );
Хотя мой вопрос не про redux.
Конечно. Можно filter/map - они новые массивы возвращают....
какой красивый цвет шрифта
супер урок😊
Спасибо!
1:28:18 Можно упростить и сделать все через map const newComments = comments.map(item => item.id === data.id ? data : item) // return { ... state, comments:[ ...newComments ]}
1:37:56 ну тогда и тут можно было бы использовать const newComments = comments.filter((res) => res.id !== id);
@@wrkzg согласен
Лайк!
Друзья, напишите в комментариях - какой выриант видео вам больше нравится - Одно длинное видео (как этот курс) или Плейлист (как в курсе по React)?
жалко конечно, что вы не работаете в вебшторме(
@@thecatwrites9731 :) Привык к VSCode
@@romankiashko5435 Просто часто вижу - на других каналах - подобный материал публикуется именно - в виде таких длинных видео. Решил провести эксперимент
@@stackdev Короткие видео хорошо делят контент на логические блоки. С другой стороны в одном видео сразу ясен объем материала.
Я привык к обоим форматам, смотрите что лучше влияет на продвижение)
@@gromoblomov9853 Буду смотреть - на показатели
Здравствуйте, а будет такой же курс по redux toolkit ?
я не понимаю, зачем писать просто на редаксе, когда есть редакс тулкит... Кто сможет мне объяснить?
@@tofikhasanov6372 ну на данный момент, писать на чистом редаксе вообще не айс..мы на работе активно тулкит юзаем с санками, и вообще отлично. Но я думаю если ты попадаешь на легаси компоненты, то чтоб не впадать в панику, надо чуть знать нативный редакс))))
@@tofikhasanov6372 ну если уж редакс освоил то тулкит точно мозгов хватит вот в чем логика
Хорошо, понятно, интересно, советую. Я вот только не понял зачем использовать thunk, мы разве не можем просто создать файл api и там прописать асинхронные запросы, без всяких санок, я пока не очень понимаю для чего они нужны, я делал интернет магазин на редаксе и без санок обошёлся, в чём их необходимость может кто вразумит? А про видео - самое главное, что здесь без извращений, некоторые начинают показывать тебе какие-нибудь финты, как они умеют, как будто специально, шоб не пониль и так ну лан.. здесь просто и понятно
@@ilyazm47 по идее, мы так и делали с родным useState, поэтому наверное можем. Я тоже только начал изучать редакс. А вы как далеко ушли?
Круто ЛАЙК, а как обнулить input после сабмита?
у кого не запускается базовий проект меняем в package.json : "start": "react-scripts start" на "start": "react-scripts --openssl-legacy-provider start"
"build": "react-scripts build" на "build": "react-scripts --openssl-legacy-provider build"
спасибо ! подскажите , сейчас уже другой подход используется?? не могу понять ! все уроки год назад и меньше и уже неактуально! обновления что каждый месяц, как научится тогда
@@YulVilaya я хз я сам учусь 8 мес уже на этапе поиска роботы, но без опыта с работой совсем плохо
Большое спасибо за видеоурок. Помог разобраться с Redux в React новичку.
Одно но. Как только в видео вы перешли к Redux Thunk, я естественно тоже смотря видеоурок продолжил писать код, как у вас. В последствии, у меня возникла ошибка: TypeError: Cannot read properties of undefined (reading 'apply').
Я ознакомился с вашим репозиторием с готовым кодом, скачал проект оттуда, скачал все npm зависимости и запустил его, получив ту же самую ошибку. Код в вашем проекте я уже не менял вообще.
Так и не смог исправить на данный момент эту ошибку. Можете помочь?
Добрый день. Попробуйте убрать строчку из файла index.js: window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
И напишите.
@@stackdev
Уведомления у UA-cam работают очень вовремя, xD.
Спасибо, что помогли решить проблему! Теперь все работает.
приветствую у меня тоже самое ! не могу решить....?
@@alikrekrytov6865 мне помогло решение, которое предложил автор выше. После проблем не было.
Очень круто все объяснено. Единственный момент я не понял зачем подключали Thunk, запросы на сервак работают у меня и без этого. в видео нет объяснения
Redux Thunk это middleware библиотека, которая позволяет вам вызвать action creator, возвращая при этом функцию вместо объекта. Функция принимает метод dispatch как аргумент, чтобы после того, как асинхронная операция завершится, использовать его для диспатчинга обычного синхронного экшена, внутри тела функции. У вас может работать но всё таки нужно учитывать ПенТест, + если работает это не факт тому что всё идёт правильно.. всегда нужно искать ошибки)
💥💥💥
Подскажите, что за cmd вы используется, как называется программа, та что внешняя командная строка?
cmder
Спасибо большое за работу, видеоролик отличный! У меня возникло непонимание устройства работы редакса. Судя по табличке action должен хранить в себе какую-то логику по работе с данными, но в примере action фактически просто указывает на логику, прописанную внутри reducer`а через свой тип. Получается что сами action`ы хранятся внутри reducer`а и мы должны просто на них указывать, или я не правильно понял суть?
action - обычный объект в котором указан тип + данные (если надо)
- в любом компоненте - вы ""дергаете" нужный action - есди надо добавляете данные. точка
- reduсer - видит тип action - и действует в соответствии с логикой
@@stackdev Похоже разобрался, спасибо!
1:31:04
нашел способ полегче...
case COMMENT_UPDATE:
return {
...state,
comments: state.comments.map(com => {
if (com.id === action.data.id) {
return action.data;
} else return com;
})
}
чиназес !
Добрый день, а какой вы плагин используете который помогает автокомплитить после точки?
Очень хотелось бы урок по redux toolkit. Как вы больше никто не умеет объяснять.
Почему у меня ошибка 'apply' не знаете случайно , я подключил redux-devtools-extension в index.js и вылезла ошибка и приложение сломалась? 1:42:18
const store = createStore(
rootReducer,
compose(
applyMiddleware(thunk, spamFilter),
window.REDUX_DEVTOOLS_EXTENSION
? window.REDUX_DEVTOOLS_EXTENSION()
: (f) => f
)
);
не понял когда мы добавили комбайнер({}). это необходимо для работы провайдера? не понимаю как это сработало и почему мы сначала делали через стор файл. а потом он стал нам не нужен каким то образом. без комбайнера не работает?
разобрался по документации
Большое спасибо за видео. Василий, подскажите пожалуйста, как решить проблему при разворачивании npm i?
В исходниках в package.json eslint 7.11, а у меня разворачивается 8.29. Из-за этого не запускается npm start
Для ребят с такой же ошибкой. Измените скрипт "start" на "react-scripts --openssl-legacy-provider start",
Ссылки на проекты автора в github. Рабочий репозиторий: github.com/VasilyMur/React_Redux_Base Готовый проект: github.com/VasilyMur/React_Redux_Complete
46:09 Зачем возвращать вызов диспатча?
После фразы "Привет козел" стало смотреть в два разы интересней.
:)) В реальной жизни - комментарии могут быть намного жестче
начинающий и тот кто не работал с менеджерами состояний раньше навряд ли поймет. бездумно разделили все на файлы, зачем, для чего, какие это дает преимущества?
с размером шрифта кода всё таки немного перебор, а так спасибо за наглядность, было очень полезно
С НУЛЯ? Спасибо, был бы признателен за пояснение, как именно устанавливается React и React-Redux на ПК, а то тут уже с пол пути все (не с нуля, явно) 👍
Это видео предполагает что вы знаете как работает React
Подскажите, а есть ли смысл учить редакс сейчас или useContext все решает ?
Все упирается в цели, которые вы ставите. В каких-то случаях, использование контекста может быть достаточным...
@@stackdev благодарю за ответ!
При запуске redux белый экран, не подскажите что делать?
А что в консоли? какая ошибка?
для полного нуля это тяжело.но еслиуже пробывал но забыл заходит хорошо.у Димыча тоже курс хорош
подскажите что за курс Димыча и как найти / спасибо !
Спасибо за видео, но лучше бы уже на тс сразу писать, чистый js уже как то архаично выглядит 😀
Тем, кто только начинает разбираться- будет проще на чистом JS
привет, а что за тема у тебя в редакторе?
Dracula
connect(mapStateToProps)(Likes) не могу понять как это понимать и как работает
почитал документацию, разобрался. метод устарел пишут
Здравствуйте!
А почему не тулкит?
Решил, что полезнее показать как это работает в чистом виде...
Дякую за урок
Спасибо!
Охх, щас поглядим что за конфетка
ошибка npm run start - error:0308010C:digital envelope routines::unsupported - мне помогло снизить версию node с 18.9.0 до 14.8.0 (может работают и поздние хз), всё получилось
Было бы не плохо шрифт увеличить. Спасибо.
что-то у меня даже зависимости не ставятся в проект. постоянная ошибка
1:19:55 чуть назад перемотать
const { id } = action
const { comments } = state
const newComments = comments.filter(res => res.id !== id)
return {
...state,
comments: newComments
}
это все что нудно для удаления =) просто фильтрануть массив и вернуть новый, после чего также вернуть state и в комменты перекинуть newComments. Зачем нам индекс юзать и слайс после, у нас и так есть ID для поиска. В вашем случае мы делаем масло маслянное, так как через айдишник который сам по себе уникален, мы ищем индекс зачемто и после опять режем все ето дело.
К сожалению, сборка с Github не запускается
а в чем проблема? что пишет в консоли?
@@stackdev проблема решилась созданием проекта с нуля: просто создал новый проект и вручную перекопировал данные из файлов в репозитории и картинку, затем из файла с зависимостью закинул Loader и uniqid.
Полностью следовал инструкциям: сначала установил зависимости, затем redux \ react+redux, проект отказывался запускаться.
Первая строчка из терминала:
"Error: error:0308010C:digital envelope routines::unsupported"
@@Дмитрий-л4с9х ошибка похоже связана с версией node
Спасибо за урок. Первая половина идеально зашла, вторая тяжелее 😔
Ну тут нужно время - чтобы все через себя пропустить:)
createStore устарел, перечёркивает, а так спасибо за урок!
Курс актуален?
Конечно
хаха орнул от привет козёл=)) я тоже так люблю писсать🤣🤣
:))
@@stackdev особенно =)),когда ошибка должна вылезти выводит слово Козёл 🤣😅😆!!! Так чуток по живее становится.=))
@@mikaelgevorgyan4521 ::)))) ну это надо поправить
Что за тема?
Dracula
Может кому-то и было полезно...Но мне реально со знанием реакта, не удалось понять автора... Много действий без объяснений...
А вы писали код вместе со мной?
@@stackdev да! Шел по шагам. Дошел до 51 минуты.... Понял, что ничего не понимаю, пото начал смотреть снова... И ничего не понял ещё раз.....многие действия говорите, пишем так, тут так... Почему? Зачем? Я понимаю, что я смотрю это бесплатно :) и грех жаловаться, но говорю, как есть!
@@АлександрЕрмолов-п2ь Ну прежде чем подойти redux + react нужно знать js + react...
Если кто при при просмотре наткнулся на вопрос о том как вызывается dispatch в commentsLoad, то это благодаря пакету redux-thunk
Почему у меня ошибка 'apply' не знаете случайно , я подключил redux-devtools-extension в index.js и вылезла ошибка и приложение сломалась?
@@itsemil2722
import { applyMiddleware, compose, createStore } from 'redux';
const store = createStore(
rootReducer,
compose(
applyMiddleware(thunk),
window.__REDUX_DEVTOOLS_EXTENSION__ && window.__REDUX_DEVTOOLS_EXTENSION__()
)
);
===
или
npm i redux-devtools-extension
import { composeWithDevTools } from 'redux-devtools-extension';
const store = createStore(
rootReducer,
composeWithDevTools(applyMiddleware(thunk))
);
1:39:00
1:02:37
не зна, вроде то что нужно, но такой смотрю на это и думаю, чёт какой-то проект сам по себе странный, ну то есть это не какая-то интересная штуковина, ну хз, ну посмотрим
очередной урок в стиле 2+2 = 4 а дальше смотрите как я умею, обьяснять ничего не буду
Почему я такой тупой...
Ничего не понимаю.