मैं एक मॉड्यूल बनाकर विभिन्न मॉड्यूल के बीच कुछ डेटा साझा करना चाहता हूं, उदाहरण के लिए dataService
कहा जाता है, इसमें एक चर डालें, और फिर इस मॉड्यूल को अन्य मॉड्यूल में निर्भरता के रूप में डालें ।requjs में विभिन्न मॉड्यूल के बीच डेटा साझा करने के लिए, जावास्क्रिप्ट
define('dataService', function() {
var quotes = [];
return {
quotesArray: quotes,
};
});
require(['dataService'], function (dataService) {
dataService.quotesArray {1, 2, 3}; // setting the quotes variable
});
define('otherModule', ['dataService'], function (dataService) {
var x = dataService.quotesArray; // x = empty Array, why?
});
यहाँ वैकल्पिक हल है::
define('dataService', function() {
var quotes = [];
var getQuotes = function() {
return quotes;
};
var setQuotes = function (newQuotes) {
quotes = newQuotes;
};
return {
getQuotes: getQuotes,
};
});
require(['dataService'], function (dataService) {
var x = dataService.getQuotes(); // now I can get/set the quotes variable
dataService.setQuotes();
});
मैं सिर्फ अगर यह कुछ डेटा अलग में सुलभ हो बनाने के लिए एक उचित तरीका है सोच रहा हूँ यहाँ कोड (वह काम नहीं करता है) मॉड्यूल?
और पहला विकल्प क्यों काम नहीं करता है?
[का उपयोग RequireJS के संभावित डुप्लिकेट, मैं ग्लोबल ऑब्जेक्ट्स या सिंगलेट्स में कैसे पास करूं?] (http://stackoverflow.com/questions/5608685/using-requirejs-how-do-i-pass-in-global-objects-or-singletons-around) – explunit
पहला टुकड़ा अपेक्षित काम करता है, क्योंकि यह पहेली दिखाता है, http://jsbin.com/ifeyefo/1/। आपके सेटअप में कुछ गड़बड़ होनी चाहिए। क्या यह वास्तव में आपके द्वारा उपयोग किया जाने वाला कोड है, या एक सरल उदाहरण है। –
@ एंड्रियास कोबरले, क्षमा करें, पहेली को नहीं खोल सकते हैं। यह लगभग कोड है जिसका मैं उपयोग कर रहा हूं। –