2015-11-02 9 views

cevap

12

Fark ettiğiniz gibi React Native, Cordova'yı temel almıyor. Bir WebView içine gömülmüş bir uygulamaya benzeyen bir web sitesi değildir.

React Native bir JavaScript çalışma zamanı kullanır, ancak kullanıcı arabirimi HTML değildir ve WebView kullanmaz. Kullanıcı Arabirimini tanımlamak için JSX ve React Native özel bileşenlerini kullanırsınız.

Yerel düzeyde bir performans ve görünüm ve his sağlar ancak bazı UI bölümleri iOS ve Android için ayrı olarak yapılandırılmalıdır. Örneğin, Araç Çubukları tamamen farklıdır, ancak TextInput her iki İşletim Sistemi için de aynı olabilir.

+1

Bu tür bileşenleri nasıl üretiyorsunuz? Neden böyle bir durumda flexbox hakkında konuşuyorlar? Bir bileşen eklemek istiyorsam Java'yı (veya Objective-C) bilmeli miyim? – kharandziuk

+0

- Bileşenler Cordova ile karşılaştırılabilir, bunları Android için Java'da ve iOS için Objective-C'de hazırlar, örnekler için https://react.parts/native adresini arayın. Ayrıca React gibi diğer bileşenleri oluşturmak için bileşenleri de karıştırabilirsiniz. - Uygulamanızı, JavaScript'te tanımlanan CSS özelliklerini kullanarak şekillendirirsiniz. Bunu daha basit hale getirmek için esnek kutuya dayalı bir yerleşim motoru oluşturdular. – AMilassin

+0

@AMilassin "Bir JavaScript çalışma zamanı kullanıyor" yani iOS ve android üzerinde çalıştırılmak üzere özel bir JavaScript motoru oluşturdular? Cordova, her platform için yerel WebView kullanıyor; React Native'ın yapımcıları, JavaScript'in yerel olarak çalışmasına izin veren bir alternatif oluşturdu mu? Eğer öyleyse, bunu nasıl yaptılar? –

5

iOS simülatörleri ve cihazlarında, Android emülatör ve cihazlarda React Native, Safari'yi destekleyen JavaScript altyapısı olan JavaScriptCore kullanır. Source