инстансов контекста конкретного типа?
const xContentCreator = ()=> React.createContext<XContext | null>(null); const xContext1 = xContentCreator(); const xContext2 = xContentCreator(); ...
шта
Ну ты спрашивал как много конетекстов заданного типа делать, вот тебе creator для этого
точ что можно криэйт контекст много раз вызвать это дяже я понимаю, вопрос не в том,. вопрос в том созданный однажды контекст является плоским и всегда содержит одно и тоже значение, или можно как-то обеспечить разные области видимости
А что значит плоский?
значит что содержит одно значение не зависимо от своего места в иерархии
У меня есть одна идея. Идея конечно может быть и тухлая, потому что у меня сегодня мозги не очень работают. В общем контекст храним в состоянии компонента, который являеться корнем дерева элементов. Каждый корень будет работать со своим экземпляром. Теоретически код должен быть одинаковым и "без огорода". Надо будет проспаться и как нибудь попробовать)))
если это связано с созданием экземпляров через криэйт контекст то ты упрешься в то что тебе нужно будет научить экземпляры компонентов отличать свои контексты (если я вообще правильно понял о чем ты)
const [xContext, setXContext] = useState(React.createContext<XContext | null>(null)); ... return <xContext.Provider value={xContextData}> ... </xContext.Provider> Возможно нужны буду проверки дополнительные на null
Или контекст присваивать внутри useEffect
Ну или както через ref, в общем подумать надо
ну я сейчас так и делаю, у меня компонент формы, я в ефекте беру имя формы и сандалю в контекст ссылку на инстанс а когда мне нужно ее засабмитить из вне, я беру контекст и ctx.submit('name', success, fail)
Ну а сам контекст у тебя где создаеться? Внутри компонента или снаружи?
Обсуждают сегодня