2015-12-17 15 views
5

मैंने एचटीएमएल 5 वेबवर्कर्स के साथ प्रतिक्रिया घटकों को प्रस्तुत करने के बारे में ऑनलाइन कुछ चीज़ें देखीं .. रिएक्ट के पीछे पीट हंट हेड honcho इसके बारे में बात कर रहा था।वेबवर्कर्स के साथ प्रतिक्रिया घटकों को प्रस्तुत करना

मेरे पास सरणी के प्रत्येक तत्व पर कुछ सीपीयू गहन कार्य है जिसके बाद सरणी के प्रत्येक तत्व का एक रेंडर प्रस्तुत किया जाता है, इसलिए मैं उनमें से प्रत्येक को वेबवर्कर में डालने और फिर HTML स्ट्रिंग को मुख्य पर पोस्ट करने के बारे में सोच रहा हूं यूआई धागा

मेरा प्रश्न है - ऐसा लगता है React.renderToString तरह ReactDOMServer.renderToString के पक्ष में पदावनत किया गया है ... इसलिए मैं आप और पीट हंट के सभी पूछना - हम सामने के अंत पर ReactDOMServer का उपयोग करने वाले हैं हम प्रस्तुत करना WebWorkers उपयोग करना चाहते हैं प्रतिक्रिया घटक या कोई और अनुशंसित दृष्टिकोण है?

(कोर्स का कारण यह है कि हम केवल जेएस में धागे के बीच स्ट्रिंग/क्रमबद्ध डेटा पास कर सकते हैं, इसलिए विचार एक स्ट्रिंग में प्रतिक्रिया घटक प्रस्तुत करना है, फिर उसे स्ट्रिंग के रूप में मुख्य UI थ्रेड पर वापस भेज दें।)

+0

बस एक त्वरित सोचा, क्या तुम सच में WebWorker में घटकों प्रस्तुत करना करने की आवश्यकता है -

यहाँ प्रदर्शन संख्या भी कर रहे हैं? यदि अधिक कुशल नहीं है तो सरणी डेटा को वापस पास करना पर्याप्त होगा? – enjoylife

+0

अच्छी तरह से, प्रस्तुत करने से पहले बहुत सारे काम हो रहे हैं, लेकिन हाँ रेंडर वेबवर्कर में जा सकता है या नहीं, लेकिन चूंकि मैं पहले से ही डब्ल्यूडब्ल्यू का उपयोग कर रहा हूं, तो मैंने सोचा था, साथ ही साथ वहां भी प्रस्तुत किया जा सकता है मैं इसमें हूँ प्रश्न के लिए, मान लें कि यह आवश्यक/या वास्तव में वांछित है :) –

+0

वैसे मैं कहूंगा कि यह बिना किसी संशोधन के ब्राउज़र पर चलता है, तो क्यों नहीं। यह केवल इतना विशिष्ट उपयोग मामले होने के कारण वकालत नहीं की जा सकती है। लेकिन, हे, अगर यह काम करता है और प्रदर्शन संतोषजनक है, तो मैं इसके साथ दौड़ूंगा। – enjoylife

उत्तर

3

मैंने एक वेब कार्यकर्ता में प्रतिपादन के त्वरित कार्यान्वयन को लिखा। यह वास्तव में renderToString नहीं है, लेकिन एक कस्टम रेंडरर की तरह अधिक है। मैंने यह भी पाया कि यह सामान्य कार्यान्वयन से बहुत तेज है।

डेमो पृष्ठ में 2 अनुप्रयोग हैं - एक उदाहरण एक सीपीयू गहन ऐप दिखा रहा है, और घटनाओं के साथ एक साधारण TODO सूची है। http://blog.nparashuram.com/2016/02/using-webworkers-to-make-react-faster.html

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