@react_js

Страница 4712 из 5115
m
29.08.2018
07:34:11
Посмотри исходники либы.
browser-cookie парсит, форматирует, добавляет удобство, действия get, set, del. Не вижу какой-то необходимости пока тащить либу, если мой велосипед в одно действие на ту же тему будет короче.

Игорь
29.08.2018
08:05:00
хочу отделить стор, вью и логику на три разных слоя чтобы можно было: - тестить логику без view вообще - тестить view отдельно от логики - менять логику без трогания view
интересную штуку делаешь у меня какраз была задача где пришлось на компонент возложить много логики. очень расстраивала она меня. С вьюшками понятно простов компонентах держишь. А как решаешь проблему с контейнерами, и как пробрасываешь логику до вью. И как ее держишь

Сергей
29.08.2018
08:10:48
интересную штуку делаешь у меня какраз была задача где пришлось на компонент возложить много логики. очень расстраивала она меня. С вьюшками понятно простов компонентах держишь. А как решаешь проблему с контейнерами, и как пробрасываешь логику до вью. И как ее держишь
Логика крутится отдельно от стора и вью. Контейнеры это компоненты которые знают как подписываться на стор. Полностью от этого не уйти. Ибо Вью всегда будет зависеть от стора. view = f(data) Вью лишь знает о том какие события кидать в логику. Логика может произвольно подписываться на события. Собственно логику можно менять не трогая вью Прототип: github.com/sergeysova/storied

Google
Сергей
29.08.2018
08:14:00
хочешь к псевдо-мввм прийти ?
Не знаю. Пока что не ложится на эти термины

Aleksey
29.08.2018
08:14:33
Привет! Работал ли кто с keycloak? Возможно ли сделать авторизацию в этом сервисе через ajax запросы? Спасибо)

Сергей
29.08.2018
08:20:28
EventEmitter Это вроде нодовский обработчик ?
Это просто паттерн. Реализуется на любом языке. Просто в ноде он в основе архитектуры

Игорь
29.08.2018
08:23:07
Сергей
29.08.2018
08:23:17
Это два разных паттерна

Roman
29.08.2018
08:27:17
есть массив, сначала делаю map, потом filter у кого есть примеры обхода массива один раз через редьюс ?

Arthur
29.08.2018
08:28:04
а чо сложного-то ?

Google
Kendr
29.08.2018
08:29:05
есть массив, сначала делаю map, потом filter у кого есть примеры обхода массива один раз через редьюс ?
const customMap = (arr, cb) => arr.reduce((acc, key) => cb(key) ? acc.push(key) && acc : acc, []) Без андефайнда, ну там кароче сам поправишь так скозат еси че

Алексей
29.08.2018
08:29:07
есть массив, сначала делаю map, потом filter у кого есть примеры обхода массива один раз через редьюс ?
раз - https://www.google.ru/search?q=js+filter+and+map+together&oq=js+filter+and+map&aqs=chrome.1.69i57j0l5.5509j0j7&sourceid=chrome&ie=UTF-8 два - https://stackoverflow.com/questions/34398279/map-and-filter-an-array-at-the-same-time-in-javascript

Arthur
29.08.2018
08:29:52
const arr = [1, 2, 3, 4, 5]; const reduced = arr.reduce((p, c) => { if(p % 2 === 0) { return [...p, `hello, world ${c}`] } return p; }, [])

Roman
29.08.2018
08:30:16
Сяп

Roman
29.08.2018
08:31:45


Arthur
29.08.2018
08:31:54
Я бы делал .concat
из-за читабельности ?

Kendr
29.08.2018
08:32:02
.filter(Boolean) не так страшен

из-за читабельности ?
Строки спредятся по одному символу

Сергей
29.08.2018
08:32:07
из-за читабельности ?
Из-за скорости

Arthur
29.08.2018
08:32:38
думаю, что на таких размерах это некритично )

Сергей
29.08.2018
08:32:56
думаю, что на таких размерах это некритично )
Ну да. С этого и начинаются тотальные тормоза (утрирую)

Aleksey
29.08.2018
08:32:59
Сергей
29.08.2018
08:33:22
reduce еще можно.
Попробуй прочесть с чего тред начался

Arthur
29.08.2018
08:33:25
Arthur
29.08.2018
08:33:46
из-за перебора первой коллекции ?

во время деструктуризации

Kendr
29.08.2018
08:33:54
reduce еще можно.
Там выше уже обсудили если чё

Google
Сергей
29.08.2018
08:33:58
Aleksey
29.08.2018
08:34:13
Попробуй прочесть с чего тред начался
Вечная проблема того что люди не делают replay. Нихрена не понятно откуда начинается вопрос.

Сергей
29.08.2018
08:34:55
Aleksey
29.08.2018
08:36:40
Там выше уже обсудили если чё
Если чё можно поиском найти ответы на все вопросы, за пол миллиона сообщений уже всё обсудили.

Игорь
29.08.2018
08:56:29
Парни а какие щас топовые фреимворки типо material-ui

Serhii
29.08.2018
08:57:18
Из-за пересоздания
Иммутабельность же

Roman
29.08.2018
08:57:33
Игорь
29.08.2018
08:57:58
Vlad
29.08.2018
08:58:03
Tor
29.08.2018
08:59:12
Если чарты в админку, то https://github.com/recharts/recharts норм? Есть какие-то минусы у неё? (На другом проекте делал с chart.js, вроде было норм)

Artyom
29.08.2018
09:05:05
Парни а какие щас топовые фреимворки типо material-ui
https://github.com/artalar/blog/blob/master/src/pages/currently-best-ui-kits.md

Сергей
29.08.2018
09:05:41
Иммутабельность же
Там это не обязательно

Так это ж единственный верный путь, как еще делают то?) Точнее разве сейчас по-другому пишет кто-то?
Никто не может по настоящему логику отделить. По крайней мере я не видел

Serhii
29.08.2018
09:09:00
Сергей
29.08.2018
09:10:40
FP, immutable, pure functions - заставят это сделать.
Ты видимо сообщением ошибся

Потому что сейчас вообще мимо

Serhii
29.08.2018
09:14:35
Ты видимо сообщением ошибся
https://clip2net.com/clip/m34216/12fd6-clip-49kb.jpg?nocache=1 Ну, вот простой пример: - логика идёт отдельно в первой части кода (после импортов). Всё иммутабельно, pure functions - стор отдельно в createStore - вью отдельно после создания стора

Google
Serhii
29.08.2018
09:15:53
Где тут логика?
редьюсер = логика. селектор - логика

Admin
ERROR: S client not available

Сергей
29.08.2018
09:15:59
Пиздец

Нет

Serhii
29.08.2018
09:16:38
Редюсер диспатчит?! Шштоо??
это лишь пример. Специально посторил пример, где сайд-эффект можно реализовать через редьюсер (знаю, что так лучше не делать)

Сергей
29.08.2018
09:16:44
Селектор это не логика. Это выбор данных из стора. Абстракция над структурой. Редюсер это апдейтер стора

Это вообще не логика

Vlad
29.08.2018
09:17:35
Никто не может по настоящему логику отделить. По крайней мере я не видел
Сейчас вышло так, что пишу приложение без интерфейса, дергаю танки из консоли) Интерфейс соотвественно нарисуют - надо будет прикрутить к стейту. Ты про что-то такое?)

from
29.08.2018
09:18:38
Селектор это не логика. Это выбор данных из стора. Абстракция над структурой. Редюсер это апдейтер стора
по задумке редакса редьюсер как раз описывает логику) Это уже энтузиасты решили всё из редакса повытаскивать и использовать его как общий EE

Сергей
29.08.2018
09:18:39
Например дебаунс событий делать в этом слое.

Мы идём в тишине
29.08.2018
09:19:02
Делаю приложение на React / Redux / Redux-Saga. Интерфейс - консольный, написан на react-blessed. В принципе, приложение уже готово, и отлично работает. И вот возникла у меня мысль — а не запилить ли мне GUI-шную версию на Electron. В идеальном случае это будет просто замена слоя представления. У меня все компоненты достаточно чисты, поэтому мне надо будет просто запилить UI на обычном реакте, чтобы по-другому рендерить состояние стора. Но дьявол, как всегда в деталях. Нужен совет, как лучше в таком случае организовать репозиотрий. У меня сейчас сделан монорепо с помощью Lerna, и многие вещи лежат в отдельных npm-пакетах. Слой данных, слой кеширования, сторонний бинарник, итд. Но сама связка react-blessed / redux / saga — в одном npm-модуле. Запихивать CLI и Electron версии в один NPM-пакет что-то не особо хочется. Стоит ли мне вынести тогда в отдельный NPM-пакет всю логику без представляения? То есть редьюсеры, экшены, саги, селекторы и сервисы. Или плюнуть на всё — и скопипастить её в двух пакетах - в консольном приложении, в котором она сейчас и живёт, и в гуёвом — и пусть, типа, живёт двумя жизнями? P.S. приложение представляет собой музыкальный плеер.

Сергей
29.08.2018
09:19:10
Serhii
29.08.2018
09:19:13
Селектор это не логика. Это выбор данных из стора. Абстракция над структурой. Редюсер это апдейтер стора
Вики: » Бизнес-логика — в разработке информационных систем — совокупность правил, принципов, зависимостей поведения объектов предметной области (области человеческой деятельности, которую система поддерживает). Иначе можно сказать, что бизнес-логика — это реализация правил и ограничений автоматизируемых операций. Является синонимом термина «логика предметной области» (англ. domain logic). Проще говоря, бизнес-логика — это реализация предметной области в информационной системе. К ней относятся, например, формулы расчёта ежемесячных выплат по ссудам (в финансовой индустрии), автоматизированная отправка сообщений электронной почты руководителю проекта по окончании выполнения частей задания всеми подчиненными (в системах управления проектами), отказ от отеля при отмене рейса авиакомпанией (в туристическом бизнесе) и т. д. « Редьюсер - это реализация предметной области (правил и ограничений автоматизируемых операций), нет? селектор - то же самое

from
29.08.2018
09:19:24
Как раз вот оно, отделение логики от стора

Редьюсер грубо говоря не знает про стор никакой

Сергей
29.08.2018
09:19:48
Делаю приложение на React / Redux / Redux-Saga. Интерфейс - консольный, написан на react-blessed. В принципе, приложение уже готово, и отлично работает. И вот возникла у меня мысль — а не запилить ли мне GUI-шную версию на Electron. В идеальном случае это будет просто замена слоя представления. У меня все компоненты достаточно чисты, поэтому мне надо будет просто запилить UI на обычном реакте, чтобы по-другому рендерить состояние стора. Но дьявол, как всегда в деталях. Нужен совет, как лучше в таком случае организовать репозиотрий. У меня сейчас сделан монорепо с помощью Lerna, и многие вещи лежат в отдельных npm-пакетах. Слой данных, слой кеширования, сторонний бинарник, итд. Но сама связка react-blessed / redux / saga — в одном npm-модуле. Запихивать CLI и Electron версии в один NPM-пакет что-то не особо хочется. Стоит ли мне вынести тогда в отдельный NPM-пакет всю логику без представляения? То есть редьюсеры, экшены, саги, селекторы и сервисы. Или плюнуть на всё — и скопипастить её в двух пакетах - в консольном приложении, в котором она сейчас и живёт, и в гуёвом — и пусть, типа, живёт двумя жизнями? P.S. приложение представляет собой музыкальный плеер.
Опенсорс?

Google
from
29.08.2018
09:19:50
Только описывает логику того, как должно меняться состояние

LocSg
29.08.2018
09:19:57
setState асинхронный?

Мы идём в тишине
29.08.2018
09:20:00
Сергей
29.08.2018
09:20:18
Только описывает логику того, как должно меняться состояние
Только логика немного сложнее чем обновление кусочка стора

Только логика немного сложнее чем обновление кусочка стора
Так происходит размазывание ровным слоем

да
Кинь ссылку, плиз

Vlad
29.08.2018
09:21:04
Примерно. Только чтобы логика не была завязана на стор. А крутилась отдельно.
Наверное это не работает, когда у нас логики представления больше, чем бизнес) Поэтому ты говоришь не видел норм разделения)

Сергей
29.08.2018
09:21:09
Вики: » Бизнес-логика — в разработке информационных систем — совокупность правил, принципов, зависимостей поведения объектов предметной области (области человеческой деятельности, которую система поддерживает). Иначе можно сказать, что бизнес-логика — это реализация правил и ограничений автоматизируемых операций. Является синонимом термина «логика предметной области» (англ. domain logic). Проще говоря, бизнес-логика — это реализация предметной области в информационной системе. К ней относятся, например, формулы расчёта ежемесячных выплат по ссудам (в финансовой индустрии), автоматизированная отправка сообщений электронной почты руководителю проекта по окончании выполнения частей задания всеми подчиненными (в системах управления проектами), отказ от отеля при отмене рейса авиакомпанией (в туристическом бизнесе) и т. д. « Редьюсер - это реализация предметной области (правил и ограничений автоматизируемых операций), нет? селектор - то же самое
Только ты намертво ее привязал к стору. А я не хочу этого

LocSg
29.08.2018
09:21:34
S̶m̶°̶O̶k̶™?✔️
29.08.2018
09:21:44
Как тру прогеры решают проблемы с ассинхронным обновлением setState ? Функция, которая вызывается после setState Дает старые данные.

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