2016-02-17 8 views
11

यह एक बेवकूफ सवाल हो सकता है, लेकिन मुझे इस विषय पर बहुत अधिक जानकारी नहीं मिली। मेरे पास एक पूरी तरह से कार्यात्मक प्रतिक्रिया-रेडक्स एप्लिकेशन है और अब मैं इसे आईओएस और एंड्रॉइड पर पोर्ट करना चाहता हूं। मुझे जीपीएस या कैमरा इत्यादि जैसी किसी भी मूलभूत सुविधाओं का उपयोग करने की आवश्यकता नहीं है। सिद्धांत में मैं सिर्फ एक प्रकार का वेबव्यू बनाना चाहता हूं जो मौजूदा प्रतिक्रिया ऐप चलाता है, और फिर इसे तब तक ट्विक करें जब तक कि यह अधिक प्रस्तुत करने योग्य न हो। मेरा पहला प्रयास बस मेरी वर्तमान जेएसबंडल फ़ाइल का उपयोग करना था और इसे ऐपडिलेगेट में जेएस कोडोडेशन के रूप में चिपकाना था। उम्मीद है कि सभी प्रकार की त्रुटियों जैसे "खिड़की" को परिभाषित नहीं किया जा रहा है।एक प्रतिक्रिया ऐप को मूल रूप से प्रतिक्रिया देने के लिए सबसे तेज़ तरीका क्या है?

मुझे लगता है कि मेरा प्रश्न है: लोग आमतौर पर अपने मूल और गैर देशी कोडबेस कैसे प्रबंधित करते हैं? क्या वे पूरी तरह से अलग हैं, या क्या अधिकांश कोड रीसायकल करने का कोई तरीका है?

उत्तर

2

वे आमतौर पर बहुत अलग हैं, आंशिक रूप से क्योंकि आपका रेंडर लक्ष्य अलग है (यानी div एस) और आंशिक रूप से window जैसी चीजों के कारण उपलब्ध नहीं है। वेब और मूल ऐप्स के बीच कोड का पुन: उपयोग करना संभव है, लेकिन केवल तभी जब आप इसके बारे में बहुत सावधान रहें।

react native release blog post से:

यह ध्यान देने योग्य है कि हम का पीछा करते हुए नहीं कर रहे हैं लायक है "एक बार लिखते हैं, कहीं भी चलाते हैं।" विभिन्न प्लेटफार्मों अलग दिखता ही क्षमताएं होती हैं, लगता है, और, और इस तरह के रूप में, हम अभी भी होना चाहिए प्रत्येक मंच

6

लिए असतत एप्लिकेशन विकसित पुन: प्रयोज्य चीजों में से कुछ styles हैं:

var style = { 
    box: {height: 30, width: 30, padding: 10, ect...} 
} 

Logic जैसे राज्य:

constructor(props){ 
super(props); 

this.state= {text: "hi"}; 
} 

राज्य तो

<View> 
<Text>this.state.text</Text> 
</View> 

डोम इस

<div>this.state.text</div> 

तुम भी शेयर कार्यों लेकिन आप कर सकते हैं की तरह लग रहा है जैसे navite और डोम के बीच साझा किया जा सकता सावधान रहना जैसे कि ऊपर बताया गया था, जब तक कि आप सीधे अपने डोमेन में किसी भी डोम या रेफरी का आविष्कार नहीं कर रहे हों।

onClick(){ 
this.setState({text: "good bye"}); 
} 
2

वेब व्यू और प्रतिक्रिया-मूल दो पूरी तरह से अलग अवधारणाएं हैं। या तो आप पूर्व के साथ जाना चाहते हैं (आप वास्तव में बिना किसी परेशानी के अपने आवेदन का उपयोग कर सकते हैं), या बाद वाले के साथ। उस स्थिति में, आप शायद कुछ व्यावसायिक तर्कों का पुन: उपयोग कर सकते हैं, हालांकि अधिकांश प्रतिपादन को फिर से लिखना होगा।

देशी प्रतिक्रिया learn once, write anywhere, learn once, write once :)

0

पहले नहीं है और महत्वपूर्ण बात, आप HTML टैग के बजाय देशी घटकों प्रतिक्रिया का उपयोग करना होगा। यहाँ बटन के लिए एक कड़ी है, तो आप अन्य सभी यहाँ घटकों पा सकते हैं केवल https://facebook.github.io/react-native/docs/button.html#content मत भूलना अपने प्रोजेक्ट में प्रतिक्रिया देशी से इन घटकों आयात करने के लिए

वहाँ एक और विकल्प भी है, तो आप बस एक नया प्रतिक्रिया बना सकते हैं -नेटिव प्रोजेक्ट और इसमें वेबव्यू का उपयोग करें और अपनी पूरी वेबसाइट वहां प्रदर्शित करें। https://facebook.github.io/react-native/docs/webview.html

संबंधित मुद्दे