मैं एक वेब सेवा नियंत्रक कि कार्य करता है के लिए चार सरणियों की एक सरणी बनाता है "गतिविधि" डेटाकोणीय nsResource बाकी स्ट्रिंग सरणियों
GET /api/activity/list
GET /api/activity/1
GET /api/activity/activity-slug-name
PUT /api/activity
DELETE /api/activity/1
यह भी कुछ "मेटा" डेटा का बैकअप कार्य करता
GET /api/activity/meta/dates
GET /api/activity/meta/states
वे सभी ngResource का उपयोग करके बेहद अच्छी तरह से काम करते हैं क्योंकि वे सभी जेएसओएन ऑब्जेक्ट्स लौटते हैं। हालांकि/api/गतिविधि/मेटा/दिनांक नहीं है
यह चार सरणियों की एक सरणी में तार की एक सरणी
[
"2013-06-02T17:05:16Z",
"2013-06-07T17:05:16Z",
"2013-08-17T17:05:16Z"
]
ngResource इस बदल जाता है देता है देखें: Invalid result from ngResource request with string array
जाहिर है मैं कर सकता है बस मेटा फ़ंक्शन को गतिविधिमैटा सेवा के किसी रूप में विभाजित करें, लेकिन मैं इसे सभी को एक साथ रखना चाहूंगा
मेरा प्रश्न
हैक्या इस अति उत्साही वस्तु अपघटन करने से ngResource को रोकने का कोई तरीका है?
या क्या मुझे कोणीय के साथ एक बग उठाना चाहिए?
अग्रिम धन्यवाद
* अद्यतन *
धन्यवाद मार्क अपनी टिप्पणी के लिए। यदि आपने इसे एक उत्तर के रूप में रखा था तो मैं इसे स्वीकार कर लेता, क्योंकि यह कोणीय में एक बग को इंगित करता है और अन्य दो उत्तरों वर्तमान वास्तुकला के साथ फिट नहीं होते हैं।
जबकि आप सही तकनीकी कर रहे हैं, कोई भी है स्ट्रिंग्स की हालांकि मध्य 80 के दशक के बाद से वर्ण की एक सरणी, C/C++ प्रोग्रामर एक तरफ :)
के रूप में मैं Angular.js परियोजना के साथ GitHub पर एक टिकट उठाया है नीचे दिए गए
https://github.com/angular/angular.js/issues/2664
यह 'angular.copy के उपयोग की वजह से होता उपयोग करने के लिए कोशिश कर सकते()' '$ संसाधन के अंदर()'। जब 'कॉपी() 'फ़ंक्शन स्ट्रिंग की सरणी पाता है तो यह स्ट्रिंग को वर्णों की एक सरणी के रूप में मानता है (जो वास्तव में है)। इस व्यवहार को अक्षम करने का कोई तरीका नहीं है, अब एकमात्र असली तरीका है कि अब सीधे '$ http' सेवा का उपयोग करना है। –