Size: a a a

React — русскоговорящее сообщество

2020 August 14

И

Иван in React — русскоговорящее сообщество
Maxim Koylo
В общем есть классовый компонент, у него внутри есть стейт, и метод clear, если закинуть в этот компонент реф то можно обратиться к этому методу как ref.current.clear(), но вот в функциональном компоненте так не сделаешь, верно же?
https://codesandbox.io/s/jovial-fermi-lm8qg?file=/src/App.js
источник

И

Иван in React — русскоговорящее сообщество
источник

MK

Maxim Koylo in React — русскоговорящее сообщество
бля спасибо)
источник

MK

Maxim Koylo in React — русскоговорящее сообщество
да че ты) мне вот допустим нужно фокус устанавливать
источник

MK

Maxim Koylo in React — русскоговорящее сообщество
как раз то что нужно
источник

И

Иван in React — русскоговорящее сообщество
Maxim Koylo
как раз то что нужно
вообще правильно делается вот так

https://reactjs.org/docs/hooks-reference.html#useimperativehandle
источник

MK

Maxim Koylo in React — русскоговорящее сообщество
я и запамятовал за него, первый раз буду использывать, спс дед)
источник

MK

Maxim Koylo in React — русскоговорящее сообщество
в итоге получилось такое
источник

И

Иван in React — русскоговорящее сообщество
Maxim Koylo
в итоге получилось такое
няшно
источник

MK

Maxim Koylo in React — русскоговорящее сообщество
Иван
няшно
+
источник

R

Ruslan in React — русскоговорящее сообщество
David Bowie
Option обычно вида { name: 'Россия', value: 'rus' }

Переделай на
setValues({name, value})
value={values}
А что переделать?
источник

A

Alexandr in React — русскоговорящее сообщество
кто нибудь знает почему может сбиваться порядок данных после JSON.parse ?
.then((bodyText) => {
       console.log(bodyText);//пришло в 1 порядке
       let respBody = JSON.parse(bodyText);
       console.log(respBody);//после парса стало в другом порядке
источник

DT

Daniil Tchernyavsky in React — русскоговорящее сообщество
источник

ZS

Znacovean Simion in React — русскоговорящее сообщество
Всем привет
Подскажите пожалуйста

const drdContentRef = useRef<HTMLDivElement | null>(null);

const el = document.createElement('div');
el.classList.add(cx(styles.DropdownContent, contentClassName));
drdContentRef.current = el;

...
ReactDom.createPortal(children, drdContentRef.current)

В коде выше я создаю пустой реф, создаю див-обёртку который будет оборачивать ребенка портала.

Теперь появилась задача устанавливать inline style с позиционированием этой обёртки.
Как это сделать правильно, по реактовски?
в обычном jsx я бы просто прописал элементу на котором весит ref также и style={calculatedStyle}
А тут незнаю как.
Спасибо.
источник

DT

Daniil Tchernyavsky in React — русскоговорящее сообщество
источник

A

Alexandr in React — русскоговорящее сообщество
можно ли как то избжать этого?
источник

И

Иван in React — русскоговорящее сообщество
Znacovean Simion
Всем привет
Подскажите пожалуйста

const drdContentRef = useRef<HTMLDivElement | null>(null);

const el = document.createElement('div');
el.classList.add(cx(styles.DropdownContent, contentClassName));
drdContentRef.current = el;

...
ReactDom.createPortal(children, drdContentRef.current)

В коде выше я создаю пустой реф, создаю див-обёртку который будет оборачивать ребенка портала.

Теперь появилась задача устанавливать inline style с позиционированием этой обёртки.
Как это сделать правильно, по реактовски?
в обычном jsx я бы просто прописал элементу на котором весит ref также и style={calculatedStyle}
А тут незнаю как.
Спасибо.
точно так же, как ты добавляешь ему класснейм
источник

DT

Daniil Tchernyavsky in React — русскоговорящее сообщество
Znacovean Simion
Всем привет
Подскажите пожалуйста

const drdContentRef = useRef<HTMLDivElement | null>(null);

const el = document.createElement('div');
el.classList.add(cx(styles.DropdownContent, contentClassName));
drdContentRef.current = el;

...
ReactDom.createPortal(children, drdContentRef.current)

В коде выше я создаю пустой реф, создаю див-обёртку который будет оборачивать ребенка портала.

Теперь появилась задача устанавливать inline style с позиционированием этой обёртки.
Как это сделать правильно, по реактовски?
в обычном jsx я бы просто прописал элементу на котором весит ref также и style={calculatedStyle}
А тут незнаю как.
Спасибо.
children - это реакт компонент. Делай реакт компонент и с ним style={calculatedStyle} как и раньше. Или ты хочешь к иному? Если реф, то есть доступ для инлайн стилей
источник

DT

Daniil Tchernyavsky in React — русскоговорящее сообщество
Alexandr
можно ли как то избжать этого?
Там на мдн есть внизу про это, прочитай. Если не поможет, то @js_ru
источник

DB

David Bowie in React — русскоговорящее сообщество
Ruslan
А что переделать?
источник