मैं एक csv पार्सर को बदलने धाराओं की एक श्रृंखला के रूप में लागू है में स्ट्रीम बदलने की रचना करने के लिए:Node.js
process.stdin
.pipe(iconv.decodeStream('win1252'))
.pipe(csv.parse())
.pipe(buildObject())
.pipe(process.stdout);
मैं पार्सर (अपने स्वयं के मॉड्यूल में) अमूर्त करना चाहते हैं और करने में सक्षम हो कार्य करें:
process.stdin.
.pipe(parser)
.pipe(process.stdout);
जहां parser
बस पहले से बदलने के लिए इस्तेमाल किया धाराओं की रचना है।
अगर मैं
var parser = iconv.decodeStream('win1252')
.pipe(csv.parse())
.pipe(buildObject());
तो parser
buildObject() धारा के लिए निर्धारित है क्या करना है और केवल इस बदलाव धारा डेटा प्राप्त करता है।
अगर मैं
var parser = iconv.decodeStream('win1252');
parser
.pipe(csv.parse())
.pipe(buildObject());
कर यह, या तो काम नहीं करता है के रूप में .pipe(process.stdout)
1 पर बुलाया जाएगा धारा को बदलने और 2 अन्य को नजरअंदाज कर दिया जाएगा।
धाराओं की एक सुंदर संरचना के लिए कोई सिफारिश?
बिल्कुल मुझे क्या चाहिए। धन्यवाद। विश्वास नहीं कर सकता कि यह मॉड्यूल अधिक लोकप्रिय नहीं है ... –
वही। ये जबरदस्त है। इसके अलावा, मल्टीपाइप का स्रोत कोड बहुत छोटा है, इसलिए हुड के नीचे देखने वाले किसी भी व्यक्ति के लिए कार्यान्वयन की जांच करना उचित है। – Owen