Oleg
просто интересно.
Китикет
( { prop } = obj )
Oleg
хм... прикольно.
Oleg
спасибо.
Alexander
бесит.
души перфекциониста)
🦜
Sergey
Alexander
Gleb
Привет, подскажите, нужно при didMount неявно отрендерить компонент и получить его ширину. Как это можно адекватно сделать?
Gleb
то есть, в пропсах приходит компонент (кнопка), желательно его отрендерить неявно, получить параметры и удалить
Китикет
Frontend Priest
Andrey
Китикет
а шо ето
Чтобы это не блок кода был
Китикет
В левой части присвоения
Frontend Priest
Gleb
да я так и собирался, это само собой
Китикет
Ща чекнул
Gleb
речь о том, чтобы получить именно компонент (тег) и скрыто его отрендерить (через document.body.appendChild(tag))
Китикет
Китикет
Задача в нее присвоить просто
Gleb
Китикет
Там про это речь шла
Китикет
Китикет
Просто видел в чем проблема и что надо)
Gleb
собственно, сильный ли говнокод вручную импортированному компоненту передать пропсы, получить от него верстку и закинуть её в DOM ?
Vlad
Ребят, как вы отслеживаете утечки памяти?
🦜
Frontend Priest
🦜
Vlad
спасибо!
🦜
https://developers.google.com/web/tools/chrome-devtools/memory-problems/
Bogdan
Oleg
у меня есть проблема с классовыми компонентами. суть в том, что тут есть такая обёртка для определённых компонентов и мне нужно в стейт чайлдов (который определяются как class Child extends myWrapperClass {) записать данные. я же могу как-то сменить в родителе контекст? его нужно от чайлда как-то передать?
и вообще, очень ли частый кейс делать какую-то обёртку над React.Component?
Mihail
Oleg
David
High order component, как раз то, что тебе нужно
Oleg
блет, я знаю что это.
Mihail
Ну так, почему не применяешь?
🦜
мейби так, но я не до конца понял, что ты хочешь
Frontend Priest
Oleg
Frontend Priest
поздно...
кнопка "рефактор"
artalar
🦜
Eugene
constructor(...args) {
super(...args)
}
а как вам такое?)👀
Eugene
🤔в какой-то либе наткнулся
Mihail
Mihail
?
Eugene
🤔тоже интересно
Eugene
Вроде валидно
Eugene
что именно тут не так?
Dmitriy
Frontend Priest
🤔тоже интересно
вроде бы в конструктор прилетают только пропсы, поэтому ничего ужасного не произойдёт
Frontend Priest
но это не точно
artalar
Китикет
Oleg
Не знал)
я вот только что узнал, что когда мы пишем this.state = ... мы можем написать внутри обращение по this.state, и это будет стейт родителя.
Eugene
🤔что?
Oleg
🤔что?
вот я так же спросил.
Oleg
мне сказали "это классы, учи джиес, даун"
Oleg
ну ладно, без дауна.
Oleg
но это читалось в голосе.
Maksim
Frontend Priest
Alexander
Кто-нибудь сталкивался с подобной ошибкой?
Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
{
[functions]: ,
__proto__: { },
description: "Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.",
framesToPop: 1,
message: "Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.",
name: "Invariant Violation",
stack: "Invariant Violation: Element type is invalid: expected a string (for built-in components) or a class/function (for composite components) but got: object.
at invariant (eval code:60:5)
at render (eval code:3442:7)
at read (eval code:3160:11)
at renderToStaticMarkup (eval code:3660:5)
at Popup.prototype.calculatePosition (eval code:188:9)
at wrappedMethod (eval code:706:3)
at Popup.prototype.render (eval code:140:13)
at finishClassComponent (eval code:14741:7)
at updateClassComponent (eval code:14696:3)
at beginWork (eval code:15644:9)",
Symbol()_6.ovp50k6w7mr: undefined,
Symbol(observable)_i.ovp50k6w7q0: undefined,
Symbol(react.concurrent_mode)_p.ovp50k6w7q0: undefined,
Symbol(react.context)_o.ovp50k6w7q0: undefined,
Symbol(react.element)_u.ovp50k6w7q0: undefined,
Symbol(react.forward_ref)_q.ovp50k6w7q0: undefined,
Symbol(react.fragment)_k.ovp50k6w7q0: undefined,
Symbol(react.lazy)_t.ovp50k6w7q0: undefined,
Symbol(react.memo)_s.ovp50k6w7q0: undefined,
Symbol(react.portal)_j.ovp50k6w7q0: undefined,
Symbol(react.profiler)_m.ovp50k6w7q0: undefined,
Symbol(react.provider)_n.ovp50k6w7q0: undefined,
Symbol(react.strict_mode)_l.ovp50k6w7q0: undefined,
Symbol(react.suspense)_r.ovp50k6w7q0: undefined
}
В качестве полифила core-js 3
import 'core-js/stable';
import 'regenerator-runtime/runtime';
import "core-js/stable/symbol";
babel конфиг
presets: [
['@babel/preset-env', {
useBuiltIns: "entry",
corejs: 3,
}],
'@babel/preset-react',
['@babel/preset-typescript', {
isTSX: true,
allExtensions: true,
}],
]
Сергей
Пацыки, чет туплю. Как исключить данный props?
Сергей
Виктор
"aria-expanded": ariaExpanded,
Виктор
почитай про деструктуризацию поподробней, второй раз уже фейлишь с ней)
Сергей