मैं एक ajax कॉल Underscore.js
से memoize
समारोह का उपयोग करने से परिणाम कैश करने के लिए कोशिश कर रहा हूँ के साथ memoize समारोह का उपयोग कर। मुझे अपने कार्यान्वयन के बारे में यकीन नहीं है। कुंजी का उपयोग कर कैश किए गए परिणाम डेटा को वापस कैसे प्राप्त करें।Underscore.js
Javascript कोड::
var cdata = $http
.get(HOST_URL + "/v1/report/states")
.success(function(data) {
//put the result in the angularJs scope object.
$scope.states = data;
});
//store the result in the cache.
var cachedResult = _.memoize(
function() {
return cdata;
}, "states");
memoize की मेरी उपयोग ajax का परिणाम स्टोर करने के लिए सही है नीचे मेरी कार्यान्वयन है। एक बार इसे कैश में डाल दिया जाता है, तो कुंजी के आधार पर कैसे पुनर्प्राप्त किया जाए। i.e 'राज्य'।
var fibonacci = _.memoize(function(n) {
return n < 2 ? n: fibonacci(n - 1) + fibonacci(n - 2);
});
आप को समझना चाहिए कि यह सिर्फ एक अतिरिक्त आवरण समारोह समारोह है कि आप एक तर्क होशियार के रूप में इसे पारित बनाता है (यह करने के लिए अतिरिक्त मानचित्रण वस्तु जोड़ता है):
कुछ व्याकरण गलतियों को ठीक किया और कुछ अतिरिक्त जानकारी जोड़ा। –