@react_js

Страница 2286 из 5115
Artyom
11.10.2017
09:35:19
У кого-нибудь есть нормальный говоый компонент Autocomplete на mui@next?

Сергей
11.10.2017
09:36:00
Artyom
11.10.2017
09:36:19
Ну хоть какой, тогда)

Нормальный, в смысле готовый и рабочий

Google
Artyom
11.10.2017
09:36:55
Или так: в стиле старого mui

Да хоть какой... Дайте, код гляну, там посмотрим

Может быстрее будет, чем самому писать...

Denis
11.10.2017
10:02:02
У кого-нибудь есть нормальный говоый компонент Autocomplete на mui@next?
есть компоненты которые предоставляют логику а рендер ты сам описываешь

да и вроде там есть подобный пример

а чисто для некст ветки я и сам не находил

Artyom
11.10.2017
10:03:33
Дай глянуть, пожалуйста

Как, имея реф элемента, узнать его ширину?

Dmitry
11.10.2017
10:35:22
this.el.clientWidth

Сергей
11.10.2017
10:36:29
Artyom
11.10.2017
10:36:58
ref.clientWidth, отлично, спасибо

Dmitry
11.10.2017
10:40:23
Ребят, как можно обработчик из дочернего компонента вытянуть в родительский, если не получается через props передать, как это обычно делают? Проблема в том, что вместо композиции используется наследование. Понимаю, что через ссылку в super() как-то можно, но сам руками никогда так не делал.

Google
Dmitry
11.10.2017
10:42:39
типа export default class Component1 extends Component2 {} внутри Component2 я делаю onScroll={props.onScroll},а куда дальше его пробрасывать? В приложении я использую Component1 и на прямую работа только с ним.

Сергей
11.10.2017
10:42:50
Пусть тот кто сделал наследование компонентов сломает себе руки

Dmitry
11.10.2017
10:43:03
мне нужно решить бизнес-задачу, а не устраивать рефакторинг-пати)

Сергей
11.10.2017
10:43:14
Лол

Dmitry
11.10.2017
10:43:19
там компонент я буду неделю переделывать

Vladimir
11.10.2017
10:43:28
Пусть тот кто сделал наследование компонентов сломает себе руки
Ммм, нот эт олл ? Нам банально пришлось наследоваться от компонента

От базовой страницы, ибо ввиду нехилого легаси - нужно удалять элементы дома, если пришли не с реакт страницы. Но это можно сделать и через HOC, да

Сергей
11.10.2017
10:44:14
Ммм, нот эт олл ? Нам банально пришлось наследоваться от компонента
Написал очень много кода с реактом, ни разу не было острой необходимости в наследовании

Vladimir
11.10.2017
10:44:16
Возможно, что так будет лучше, да

Dmitry
11.10.2017
10:44:53
и что мне теперь делать? как вытянуть мой обработчик в наследника, чтобы обработать событие?

я вот даже умом схватить не могу, как это делать

Vladimir
11.10.2017
10:45:35
У нас есть легаси, который выполняют работу с домом при переходе страниц, partial-refresh так скажем. Он же и с историей работает. В итоге, чтобы присобачить react-router пришлось изменить сорцы этого легаси, и в роутере использовать ту же историю. Но если при переходе с реакт страницы на реакт - все очищает роутер, то с не реакт на реакт - приходится самим ?

Dmitry
11.10.2017
10:45:39
мэйби невозможно?

Vladimir
11.10.2017
10:45:52
Ибо мы не можем вот так взять и выпилить весь легаси, нужно постепенно

Dmitry
11.10.2017
10:46:29
Написал очень много кода с реактом, ни разу не было острой необходимости в наследовании
а если много методов полезных которые используются в других компонента засунуть в базовый компонент и наследоваться от него? это же удобно

Dmitry
11.10.2017
10:47:26
Это рак мозга
а как бы ты такой функционал организовал?

Vladimir
11.10.2017
10:47:35
hoc

Google
Сергей
11.10.2017
10:47:48
Dmitry
11.10.2017
10:47:49
ребят, вы пошли там метафизику обсуждать между собой, а мне то поможете?)) я так понимаю, что у меня выхода вообще нет, только переписывать компонент

Denis
11.10.2017
10:48:03
Introducing downshift ?️ for React ⚛️ – kentcdodds https://blog.kentcdodds.com/introducing-downshift-for-react-b1de3fca0817

Vladimir
11.10.2017
10:48:09
Написал очень много кода с реактом, ни разу не было острой необходимости в наследовании
Вот я сейчас подумал, и понял, что надо бы на hoc переписать, вместо наследования

Dmitry
11.10.2017
10:48:36
Плодить говнокод. Выход всегда есть
http://prntscr.com/gw0c31 ну вот например валидация и биндинг методов

Сергей
11.10.2017
10:48:57
Vladimir
11.10.2017
10:49:19
и зачем это в классе?

Dmitry
11.10.2017
10:49:31
а где это хранить?

Сергей
11.10.2017
10:49:55
http://prntscr.com/gw0c31 ну вот например валидация и биндинг методов
Ошибки вернуть надо, а не к рефам обращаться. И ошибки в стейт. Рефы зло

Сергей
11.10.2017
10:49:57
Бля

Там говнокод

Ручное управление классами

Жуть

а где это хранить?
Просто в модуле. Экспортировать функции и все

ed
11.10.2017
10:50:51
по поводу валидаций, в проекте всегда делаю валидацию которая проверяет ошибку, если вернулся не false - значит вернулся текст ошибки что не так, так же не всегда проверка валидно ли что-либо должна ставить класс, это уже другое

Dmitry
11.10.2017
10:51:29
Просто в модуле. Экспортировать функции и все
вообще я тоже так делал, это код моего друга мы с ним в 2 работаем над проектом

ed
11.10.2017
10:51:57
https://github.com/dleitee/valid.js проверка email или еще что писать самому - самоубийство

Google
Artyom
11.10.2017
10:52:11
Up
Чет монструозное все >_>

Stepan
11.10.2017
10:52:18
Dmitry
11.10.2017
10:52:59
Stepan
11.10.2017
10:53:22
ты бы лучше написал?
Написал бы без такого лютого трешака

Это пиздец, чувак

ed
11.10.2017
10:53:29
надо разносить проверку на ошибку и управление элементом

Сергей
11.10.2017
10:54:02
ты бы лучше написал?
Вернуть список ошибок из функции Компонент после вызова функции валидации положил бы ошибки в стейт В рендере проставил бы классы ошибок на основе данных из стейта

Stepan
11.10.2017
10:54:18
+

Admin
ERROR: S client not available

Сергей
11.10.2017
10:55:01
Dmitry
11.10.2017
10:55:16
стрелочные функции работают медленнее

вроде как

Сергей
11.10.2017
10:55:22
Лол

Ага

Stepan
11.10.2017
10:56:42
Щас бы руками классы через рефу проставлять, но зато париться, что стрелочные функции медленные

ed
11.10.2017
10:57:44
пока у вас тут ажиотаж такой, я тут еще не много вынес говнокода в опенсорс) https://github.com/edtoken/redux-crud-action-types

если это можно так назвать

есть похожий очень пакет, но у него есть проблема с которой наш проект не сможет жить, он не делает уникальными имена

у нас actionType это rest урл запроса(удобно), а они повторяются, поэтому нужна уникальность, что-то в таком стиле USER_FETCH = create('user') USER_DELETE = create('user')

Google
ed
11.10.2017
11:01:28
в нашем случае файл actionTypes по сути список урлов бека и когда ты делаешь запрос - ты используешь тот же action_type и не думаешь над тем какой там урл

ну это очень грубо говоря

то есть потом выходит что-то в стиле axios.get(actionTypes.USER) или fetch(USER)

Сергей
11.10.2017
11:02:56
Странно

Зачем так делать

У меня api.user.fetchProfile()

И вообще плевать

Что внутри

ed
11.10.2017
11:03:59
примерно года два назад я пилил большую црм на redux и меня бесили ссылки в экшенах, особенно если надо передать какую-то жопу в урле, поэтому типы экшенов сделал ссылками на рест

Vitaly
11.10.2017
11:04:17


немного жести в вашу ленту...

ed
11.10.2017
11:04:24
то есть меня бесили fetch('blablabla/asdasdasd/asdasd/asd/asd/asd/') вот это

а еще, у нас было несколько разных апи с которыми одновременно работал фронт на разных серверах и получался полный треш

поэтому я стад делать action type ссылкой по ресту

Сергей
11.10.2017
11:04:59
то есть меня бесили fetch('blablabla/asdasdasd/asdasd/asd/asd/asd/') вот это
Если есть объект апи, этого вообще нет

поэтому я стад делать action type ссылкой по ресту
В другую сторону решать надо было

ed
11.10.2017
11:05:32
ну хз, тогда показалось это удобным, в тот момент все писали export const USER = 'USER'

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