Звучит, возможно, необычно, но я пытаюсь импортировать компонент Preact с перехватчиками Preact в приложении React. К сожалению, при этом выдается Cannot read property '__H' of undefined
. Подробнее об этом ниже.
Предположим, чтобы этот вопрос был простым, компонент Preact живет в пакете, подобном следующему:
// src/components/index.js
import { h } from 'preact';
import { useRef } from 'preact/hooks';
const PreactComponent = () => {
const ref = useRef(null);
return <div ref={ref}>Hello World</div>;
};
// package.json
{
"name: "mypackage",
"main": "dist/index.js", // Output by Webpack, with src/components/index.js as entrypoint.
...
}
Стандартный материал. Он импортирован в приложение React:
...
import { PreactComponent } from 'mypackage';
const MyComponent = () => {
return <PreactComponent />
};
Это выдает Unhandled Rejection (TypeError): Cannot read property '__H' of undefined
.
Это , безусловно, хуки Preact связаны , так как удаление useRef
в компоненте Preact приводит к штрафу за рендеринг компонента. И, как вы увидите выше, ловушка определена внутри функции, как и должно быть.
Кто-нибудь пытался использовать компонент Preact с ловушками в React? Как вы go об этом?