@react_js

Страница 4736 из 5115
Eugene
01.09.2018
07:24:39
Попробуй так {}

?а вообще uppercase выглядит не очень

Max
01.09.2018
07:24:54
Попробуй так {}
так не должно работать, а с null должно

Hari
01.09.2018
07:25:01
Google
Eugene
01.09.2018
07:25:13
И да, что в loadmedia?

Umid
01.09.2018
07:25:27
Max
01.09.2018
07:25:30
А loadMedia у тебя не undefined?
годный совет, думаю в этом проьблема +1

Umid
01.09.2018
07:25:48
Max
01.09.2018
07:25:50
Нет, проверял.
не, плохо проверял

Нет, проверял.
начни с connect()(App)

Max
01.09.2018
07:26:54
все норм

добавляй теперь null, loadMedia

Umid
01.09.2018
07:27:27
добавляй теперь null, loadMedia
Я же говорю, всё та же ошибка.

Max
01.09.2018
07:27:33
Google
Eugene
01.09.2018
07:27:50
(null, null) для начала попробуй :)

Umid
01.09.2018
07:28:17
Max
01.09.2018
07:28:18
ошибки разные

Umid
01.09.2018
07:28:29
Это всё та же ошибка.

Я ведь с нею и пришёл сюда.

Max
01.09.2018
07:28:43
ок, сделай пример

Eugene
01.09.2018
07:28:45
Проблема в loadMedia похоже :)

Max
01.09.2018
07:28:49
по документации у тебя все должно работать

проблема не в connect 100%

Eugene
01.09.2018
07:29:03
Max
01.09.2018
07:29:14
ну то есть, не в том, что ты нам скидываешь.

Eugene
01.09.2018
07:29:35
ну да, нужно передовать ен сам action

Max
01.09.2018
07:29:36
в чем трудность сделать пример на codesandbox ?

Umid
01.09.2018
07:29:40
ок, сделай пример
Сейчас сделаю небольшую демку.

Hari
01.09.2018
07:29:41
loadMedia неправильно написана

mapDispatchToProps принимает первым аргументом dispatch

Сейчас сделаю небольшую демку.
https://redux.js.org/basics/usagewithreact

Почитай внимательно и сделай своё

Google
Umid
01.09.2018
07:33:25
https://redux.js.org/basics/usagewithreact
Ништяк, спасибо.



Переписал вот так, всё заработало. Верно ведь?

Hari
01.09.2018
07:33:55
Ну лучше вещи называть своими именами

loadMedia это уже то, что возвращает mapDispatchToProps

Umid
01.09.2018
07:35:12
Переписал вот так, всё заработало. Верно ведь?
Не, ошибся. Оказалось что там null, null стояло.

Всё та же ошибка.

Hari
01.09.2018
07:37:12
Всё та же ошибка.
const mapDispatchToProps = dispatch => { return { onTodoClick: id => { dispatch(toggleTodo(id)) } } }

Просто сделай по аналогии

Отдельно action creator, отдельно mapDispatchToProps

Umid
01.09.2018
07:38:31
Просто сделай по аналогии
Сейчас пытаюсь понять, куда мне запихать loadMedia.

Umid
01.09.2018
07:39:06
Отдельно action creator, отдельно mapDispatchToProps
Т.е. у меня loadMedia так и остаётся таким:

export const loadMedia = () => dispatch => { dispatch({ type: GET_MEDIA, payload: route }); }

Hari
01.09.2018
07:39:54
Нет, твой loadMedia будет принимать route и возвращать нужный action

Просто почитай хорошенько доку и все поймёшь, удачи

Umid
01.09.2018
07:41:39
Отдельно action creator, отдельно mapDispatchToProps
А вот для этого обязательно отдельный файл создавать? Я тупо в App.js написал его, в конце:



Artem
01.09.2018
07:47:35
mapDispatchToProps?

Google
Umid
01.09.2018
07:48:04
mapDispatchToProps?
https://redux.js.org/basics/usagewithreact

Artem
01.09.2018
07:50:12
Connect прямо в файле компонента, а action creator в отдельном

Kendr
01.09.2018
07:50:49
Объект используй вместо mdtp

connect(null, { actionCreator, actionCreator2 })

Admin
ERROR: S client not available

Umid
01.09.2018
07:55:20
connect(null, { actionCreator, actionCreator2 })
Блин, чего-то не догоню. У меня сейчас сам action выглядит вот так: export const loadMedia = (route) => { return { type: GET_MEDIA, payload: route }; }

А как должен?

Т.е. я должен dispatch внутри него же узказать, верно? И не прописывать никакие там mapDispatchToProps.

Всё, разобрался.

Umid
01.09.2018
08:03:12
Artyom
01.09.2018
08:10:18
Именно, это как-то тупо имхо. Ну типа, зачем реакт перехватывает событие инпута и не дает набирать текст
Мне нужен инпут в котором нельзя вводить дробные числа, попробуй это сделать без контролируемого инпута и познаешь боль

Вячеслав
01.09.2018
08:19:33
Нужен совет от вас, уважаемые профессиональные прогрмамисты реакта. Я пишу расширение, которое инъектит код на страницу браузера и иногда выводит на нем попапы (пока что через handlebars делаю темплейты), иногда используется библиотека intro.js (всплывающие тултипы). У меня есть 100+ шагов, которые инициализируются и выполняются поочередно. Шаги в основном выполняют те действия, которые я описал. Да они несложные, но мне постоянно приходится создавать новый элемент для вывода попапа и вообще как-то неудобно. Стоит ли для таких целей использовать реакт? И как я могу подгружать "шаги" с сервера, если мне нужно, чтобы этот шаг был исполняемым (функциональным), а на все случаи жизни я не могу написать шаблонов? Пока что решил просто отправлять функцию и эвалить её по приходу

Николай
01.09.2018
08:50:01
Нужен совет от вас, уважаемые профессиональные прогрмамисты реакта. Я пишу расширение, которое инъектит код на страницу браузера и иногда выводит на нем попапы (пока что через handlebars делаю темплейты), иногда используется библиотека intro.js (всплывающие тултипы). У меня есть 100+ шагов, которые инициализируются и выполняются поочередно. Шаги в основном выполняют те действия, которые я описал. Да они несложные, но мне постоянно приходится создавать новый элемент для вывода попапа и вообще как-то неудобно. Стоит ли для таких целей использовать реакт? И как я могу подгружать "шаги" с сервера, если мне нужно, чтобы этот шаг был исполняемым (функциональным), а на все случаи жизни я не могу написать шаблонов? Пока что решил просто отправлять функцию и эвалить её по приходу
На исполнение отдавать массив, с названием шагов, его парсить, промисицировать все это. Ну и библиотечку с шагами подтягивать. Может я усложняю, ввиду не понимания задачи

Вячеслав
01.09.2018
08:51:00
ну пока что так и планирую делать, но как-то это некошерно

Николай
01.09.2018
08:51:26
По моему нормально

Зарефакторить можно, когда задача будет решена

let res; [todo1,todo2,todo3].forEach {} И через промисы наверное

Вячеслав
01.09.2018
09:06:43
да с этим я разобрался, спасибо

Umid
01.09.2018
09:42:03
Правильно ли внутри редюсера перенаправлять юзера на другую страницу? Опишу задачу: есть компонент перлоадера и остальные страницы. Переход на каждую из страниц должен проходить лишь тогда, когда все картинки/видео были прогружены, но никак не раньше. Т.е. при нажатии на кнопку, включается прелоадер и срабатывает экшн в который передаются следующие параметры: 1) Ссылка на страницу, медиа которой нужно прогрузить; 2) Ссылка редиректа после полной прогрузки файлов;

Google
Umid
01.09.2018
09:46:37
Внутри экшен крейтора думаю да
Т.е. сам подход правильный?

Kendr
01.09.2018
09:46:45
Нууу

)

Umid
01.09.2018
09:47:13
Есть лучше?

Spaider
01.09.2018
09:47:38


Kendr
01.09.2018
09:48:30
Переходишь на страницу, хранишь флаг isReady, вешаешь на картинки он лоад лисенер, грузишь все Promise.all, потом .then(() => setState({ isReady: true }) if (!isReady) return <Loader />

Spaider
01.09.2018
09:49:29
Зачем вы нативное поведение браузера убиваете, специально сделано так, что бы пользователь мог видеть то что уже подгрузилось, а не просто лоадер

Umid
01.09.2018
09:49:41
Переходишь на страницу, хранишь флаг isReady, вешаешь на картинки он лоад лисенер, грузишь все Promise.all, потом .then(() => setState({ isReady: true }) if (!isReady) return <Loader />
Не могу переходить на страницу пока он не прогрузит. Т.е. у меня полупрозрачный лоадер должен стоять над предыдущим роутом, пока новый не прогрузит.

Eugene
01.09.2018
09:50:51
https://twitter.com/dan_abramov/status/1035619353209856005 ?

Kendr
01.09.2018
09:51:02
Umid
01.09.2018
09:51:57
Зачем так?
Дело в том, что между двумя компонентами есть ещё 1 ролик. Сайт строительной компании, и по сути получается что-то вроде 3-d тура, но я не гружу сразу весь тур, а даю по кускам в зависимости от сюжета.

Страница 4736 из 5115