Fabric - это новая система рендеринга React Native, спроектированная для производительности и надежности, позволяющая бесшовную интеграцию native-компонентов в приложения React Native. При интеграции пользовательского native-компонента Fabric позволяет коду React Native JS объявлять, настраивать и контролировать native-представление, а также получать native-события. Поток включает в себя объявление свойств и событий компонента с помощью codegenNativeComponent, использование компонента в экране React Native и реализацию native-компонента в HarmonyOS. Свойства и события автоматически сопоставляются с native-кодом через логику codegen/binder Fabric. Native-события могут быть запущены, которые получаются в JS в виде callback-функций, а JS может отправлять команды для управления состоянием native-компонента в runtime. Демоверсия кода демонстрирует, как объявить компонент Fabric, использовать его в экране React Native, реализовать native-компонент в HarmonyOS и связать свойства и события. Архитектура Fabric обеспечивает синхронный и предсказуемый способ обновления UI, используя структуру, которая зеркально отражает деревья JS и native-представлений. Fabric предлагает несколько преимуществ перед старым мостом, включая синхронные обновления, прямое сопоставление структур и типобезопасный, всегда синхронизированный код. Чтобы написать компонент Fabric, необходимо объявить его с помощью codegenNativeComponent, реализовать native-компонент, реализовать binder/glue и использовать его в JS.
dev.to
Using a Marquee (Scrolling Text) as an Example: How React Native Calls and Controls a Native HarmonyOS Component via Fabric
