महान सवाल, मैं चिंतित था और खुद को नहीं जानता था इसलिए एक खोज चला गया।
ऐसा लगता है कि यह ES6 शैली मॉड्यूल का समर्थन करने के लिए ES5 कोड का एक तरीका है।
System.register को ES5 के भीतर ES6 मॉड्यूल के सटीक अर्थशास्त्र का समर्थन करने के लिए डिज़ाइन किए गए एक नए मॉड्यूल प्रारूप के रूप में माना जा सकता है। यह एक प्रारूप है जिसे सहयोग से विकसित किया गया था और ट्रेसेर (तत्काल), बैबेल और टाइपस्क्रिप्ट (सिस्टम के रूप में) में मॉड्यूल आउटपुट के रूप में समर्थित है। ईएस 6 मॉड्यूल द्वारा समर्थित सभी गतिशील बाध्यकारी और परिपत्र संदर्भ व्यवहार इस प्रारूप द्वारा समर्थित हैं। इस तरह यह ES6 मॉड्यूल में पॉलीफिल पथ के लिए एक सुरक्षित और व्यापक लक्ष्य प्रारूप के रूप में कार्य करता है।
https://github.com/ModuleLoader/es6-module-loader/wiki/System.register-Explained
उदाहरण उपयोग:
कुछ और अधिक विस्तार जोड़ने के लिए, यहाँ कोणीय 1.x उन्नयन नोट, जो कार्रवाई में प्रारूप रजिस्टर के उदाहरण से पता चलता में एक उदाहरण है, लेकिन फ़ाइल के शीर्ष पर एक टिप्पणी के बजाय, यह कॉन्फ़िगर घोषणा में इसके बजाय है।
System.config({ packages: { 'base/app/js': { defaultExtension: false, format: 'register', ...
https://angular.io/docs/ts/latest/guide/upgrade.html
कारण यह
जब मॉड्यूल प्रारूप सेट नहीं है, स्वत: नियमित अभिव्यक्ति आधारित पता लगाने प्रयोग किया जाता है का उपयोग करें। यह मॉड्यूल प्रारूप पहचान पूरी तरह से सटीक नहीं है, लेकिन बहुमत के मामलों के लिए अच्छी तरह से प्रदान करता है।
https://github.com/systemjs/systemjs/blob/master/docs/module-formats.md
का उपयोग करना "प्रारूप रजिस्टर" फ़ाइल के शीर्ष पर तरीके में जो प्रारूप का पता लगाने के लिए एक संकेत देता है में से एक है।
स्रोत
2016-03-25 19:37:04
बहुत ही अद्भुत .. खुद को उत्सुक था और Google खोज किया और यह 4 मिनट पुरानी पोस्ट पहले से ही खोज सूचकांक – charlietfl
में दिखाई देती है। मुझे लगता है कि यह इंगित करता है कि यह किसी प्रकार का बहु प्रारूप लोडर - सिस्टमजेएस, हो सकता है?) कि मॉड्यूल का उद्देश्य ['System.register'] (https://github.com/ModuleLoader/es6-module-loader/blob/master/docs/system-register.md) – apsillers
हम्म से लोड किया जाना है। मैंने जो पढ़ा है, उससे मेरी धारणा यह है कि SystemJS सामान्य रूप से SystemJS मॉड्यूल का पता लगाने के लिए फ़ाइल के शीर्ष पर 'SystemJS.register() 'की उपस्थिति को देखता है, लेकिन टाइपस्क्रिप्ट कंपाइलर इससे पहले कुछ कोड डालता है और गड़बड़ करता है अनुमानी। "सिस्टम रजिस्टर" टिप्पणी किसी भी तरह से जेनरेट कोड से ऊपर हो सकती है, और या तो स्पष्ट रूप से एक विकल्प के रूप में अनुमति दी जाती है, या केवल उसी रेगेक्स से मेल खाने के लिए होता है और इसलिए अस्थायी हैक के रूप में उपयोग किया जा रहा है। –