نمایش HTML توی ریاکت نیتیو بدون WebView
خلاصهٔ کاملتر
پروژهٔ @native-html/render یه کامپوننت ریاکت نیتیوئه که محتوای HTML رو میگیره و بهجای اینکه توی یه WebView نشونش بده، اون رو به ویوهای کاملاً نیتیو iOS و اندروید تبدیل میکنه. کل کتابخونه با جاوااسکریپت خالص نوشته شده و دیگه به WebView وابسته نیست.
تو مستندات اومده که این همون پروژهٔ معروف react-native-render-html قدیمیه که حالا اسمش به @native-html/render تغییر کرده. نسخهٔ v1 پایدار شده و تیم میگه همینه که توصیه میکنن باهاش کار کنی.
نکتهٔ مهم برای کسایی که از قبل کاربر نسخهٔ قدیمی بودن اینه که API نسخهٔ جدید دقیقاً مثل react-native-render-html میمونه، پس مهاجرت بهش plug-and-play هست و عملاً نیازی به تغییر کد نداری.
طرز استفادهش هم سرراسته: یه رشتهٔ HTML رو بهعنوان source میدی و عرض محتوا رو با contentWidth مشخص میکنی:
import RenderHtml from '@native-html/render';
const source = { html: `<p style='text-align:center;'>Hello World!</p>` };
export default function App() {
const { width } = useWindowDimensions();
return <RenderHtml contentWidth={width} source={source} />;
}زیرساخت این کتابخونه روی چند پکیج هستهٔ جدا سواره، مثل @native-html/css-processor برای پردازش CSS و @native-html/transient-render-engine که درخت رندر رو میسازه. این پروژه با حمایت Software Mansion ساخته و نگهداری میشه.
نکات کلیدی:
- HTML رو بدون WebView به ویوهای نیتیو iOS و اندروید تبدیل میکنه
- جانشین react-native-render-html با همون API و مهاجرت plug-and-play
- نسخهٔ v1 پایداره و نسخهٔ توصیهشدهست
- روی پکیجهای هسته مثل css-processor و transient-render-engine سواره




