Dimitri
thunk, saga, observable
Sergei
Ну по идее в компоненте, смотреть на приходящие пропсы и если стартквиз тру делать, то что тебе надо
Sergei
thunk, saga, observable
А для thunk эт норма? Я вот видел, что его используют как мидлвар для асинхронных запросов, а не для такой вот штуки
🅅aleriy
и снова утро и снова топчик интересных вопросов наклевывается :)))
Oleg
кто-то в курсе когда pnpm из беты выйдет?
Oleg
установить пакеты может, но запустить проект - нет. даже с флагом - тогда ругается на методы в классе.
Vladimir
Динамический импорт умеет
Благодарю за наводку
Katod🇳🇵
посмотрите в сторону mobX.....альтернатива лучше Redux на мой взгляд
поддерживаю. хотя мобикс дает слишком много свободы. если выбирать как решение для команды из нескольких человек, то редакс может оказаться надежнее.
artalar
Можно еще на effector посмотреть
Nikita
Или на RxJS
Panda
Или на RxJS
Он не решит проблемы отделения логики от приложения
Panda
Это обсервабл на стероидах
Nikita
та забей, говорят он ангулярщик
RxJS это не библиотека для ангуляра
Nikita
но ты то ангулярщик
Да А какое это имеет значение ?
Panda
та забей, говорят он ангулярщик
ну, это не имеет значение, т.к. совет в целом не дает ответ на вопрос
Panda
какая разница, будет у человека в компоненте .subscription() или .then()
🦜
я сейчас считай его спародировал
Nikita
какая разница, будет у человека в компоненте .subscription() или .then()
С потоками удобнее работать, чем с просимыми
Panda
я писал на ангуляре, и везде натыканный рх делает код ужасно недружелюбным и плохо читаемым
iči
но ты то ангулярщик
А редукс не для реакта )
Panda
потоки оправданы там, где тебе нужна логика слушателя
🦜
Плохо написанный код на RX — да
ахха, так про любое можно сказать
Nikita
Ну попробуйте отписаться от промиса в одну строчку 🤷‍♀️
Panda
когда ты просто получаешь данные, то рх даром не нужен, а в ангуляре приходиься его тыкать. Получаем забавную картину, когда для того, что бы получить одну булевскую переменную, закончена загрузка или нет, надо делать сабджект и слушать это событие
Panda
м, а зачем от него отписываться? Ты имеешь ввиду отменить запрос, если закрыл приложуху?
Daniil
Забей
Panda
ахха, так про любое можно сказать
только плохо написанного кода на рх больше, т.к. в целом людей которые на нем пишут нормально в разы меньше)
🦜
он всегда так отвечает)
Panda
ну, это чсв обычное, жаль.
🦜
ну, это чсв обычное, жаль.
ща еще с тобой где-нибудь баны получим
Panda
надеюсь хотя бы это человек понимает)
🦜
))
Daniil
Топить на том что устаревает
Ruslan
Ангулярщик как клеймо ))
Daniil
🤔
Panda
unsubscription fetch - выдает ссылки только на ангуляр(
artalar
Или на RxJS
У Rx есть нерешаемые проблемы (говорил об этом здесь https://youtu.be/48XSmEIqbkI )
Panda
cancel fetch
ну я про это и говорил тоже)
Panda
там вроде cancel метод
artalar
abort controller для отмены нужен
artalar
Потоки и Rx - это норм, просто их хорошо готовить чуть сложнее
Panda
Потоки и Rx - это норм, просто их хорошо готовить чуть сложнее
и не везде просто закидывать, хотя я могу быть субьективен
Tutu
Народ вопросик. Есть такая иерархия. Родительский компонент в котором создаеться c помощью хука useRef ref. Этот ref передаеться на прямую компаненту counter. Counter создаеться через обертку forwardRef. Так вот если counter у нас вызываеться не через children какого-то компонента ссылка есть. А если я его оборачиваю в какаой-то компонент эта ссылка теряеться.
Tutu
<Grid item xs className={classes.flexGrow}> <Select defaultData={1}> <Counter ref={adults}/> </Select> </Grid>
Tutu
<FormControl className={classes.formControlSelect} > <Select variant={'outlined'} open={open} onClose={handleClose} onOpen={handleOpen} value={age} onChange={handleChange} inputProps = {{ classes: { root:classes.inputSelect } }} > { props.children } </Select> </FormControl>
Tutu
const Counter = React.forwardRef((props, ref) => { let [count,setCount] = React.useState(0); const increment = () =>{ if(count <= 9){ count++; setCount(count); //console.log(ref()); //props.callback(count); } }; const dicrement = () =>{ if(count >0){ count--; setCount(count); //props.callback(count); } }; return ( <div ref={ref} className="counter" > <Button onClick={dicrement} disabled = {count <= 0 && true}> - </Button> <span>{count}</span> <Button onClick={increment} disabled = { count>9 && true}> + </Button> </div> ); }); export default Counter;
Tutu
current undefined
🦜
current undefined
пробуй forwardRef
Tutu
так он и обернут форвард реф
Tutu
<Grid item xs className={classes.flexGrow}> <Counter ref={adults}/> </Grid>
Tutu
если так то ссылка есть
Anonymous
Доброго времени суток. Подскажите, как можно вынести папку с тестами из директории src при использовании сборки create react app от фейсбука? Спасибо.
Daniil
Есть ли такая табличка где приводится метод жизненного цикла компонента с его аналогом на vue.js?
🅅aleriy
и это первое место в топчике вопросов за утро :)
Kirill
Ребята, привет, может кто подсказать хорошие курсы по реакту адванс уровня плантые(русские и английские)
Kirill
самое востребованное говно на рынке на данный момент на фронте
Aizada
привет
Aizada
import React from 'react'; // import logo from './logo.svg'; import './App.css'; import MainHeader from './components/MainHeader'; import MainContent from './components/MainContent'; import MainFooter from './components/MainFooter' class App extends React.Component{ render(){ return ( <MainHeader/>, <MainContent/>, <MainFooter/> ); } };
Aizada
у меня работает только mainfooter
Aizada
a mainheader i maincontent не работает