Библиотека Grid, заключенная в Form, поддерживает неработающие пользовательские средства визуализации. - PullRequest
0 голосов
/ 17 января 2020

У меня есть решетка на основе окончательной формы, построенная с использованием ag-grid. Ag-grid принимает рендеры, которые в моем случае являются полями, обернутыми FormSpy Используя предварительную версию окончательной формы работ, но у меня было несколько проблем, поэтому я обновился до самой последней и получил ошибку «[X] должен использоваться внутри компонента».

Я использовал реактив devtools и, конечно же, мой пользовательский рендер / редактор полей был перемещен за пределы контекста в виде листьев в конце дерева. У меня вопрос, есть ли обходной путь, чтобы сделать эту работу? Есть ли способ подписаться на определенный c контекст? Я знаю, что это немного против паттерна, но у меня мало идей.

Пример

Это версия со старыми пакетами окончательной формы - https://codesandbox.io/s/final-form-ag-grid-lbq7f

1 Ответ

1 голос
/ 18 января 2020

У меня были проблемы с использованием formik, потому что ag-grid-react не поддерживает контекстный API React без поддержки, то есть reactNext={true}. Еще одно предложение: не переводите gridApi в состояние, вместо этого передавайте ссылку в AgGridReact, например:

  const gridApi = useRef();

  <AgGridReact
    {...}
    ref={gridApi}
  />
...