की अग्रिम :)मानचित्रण श्रेणीबद्ध JSON टाइपप्रति-KnockoutJS के लिए लिखा था वस्तु
ठीक में एक धन्यवाद के साथ शुरू करते हैं, तो मैं लोड/नॉकआउट का उपयोग कर JSON डेटा मिलान से टाइप किये गए वर्गों के नक्शे श्रेणीबद्ध टाइपप्रति/KnockoutJS कोशिश कर रहा हूँ। मैपिंग प्लगइन, पदानुक्रम एनएच डिग्री के लिए हो सकता है।
मुझे पता है कि मैं JSON डेटा से शीर्ष स्तर की कक्षा को मैप/लोड करने के लिए निम्न कार्य कर सकता हूं।
var qry = ko.mapping.fromJS(jsData, {}, new Query());
हालांकि मैं समझ नहीं टाइपप्रति/KnockoutJS कक्षाओं का एक सेट करने के लिए नक्शे के लिए कैसे/लोड जटिल, वां डिग्री, पदानुक्रमित JSON डेटा और माता पिता/बच्चे संबंध बनाने है।
मैंने अनगिनत कलाकृतियों को पढ़ा है, लेकिन जब वे सरल माता-पिता/बाल उदाहरणों से परे पदानुक्रमित संबंधों की बात करते हैं तो वे सभी कम हो जाते हैं, और मैं knockout.mapping प्लगइन का उपयोग करके कोई भी नहीं ढूंढ सकता।
यहां टाइपस्क्रिप्ट कक्षाओं की मेरी कट डाउन परिभाषाएं हैं जिन्हें मैं मानचित्र/लोड करना चाहता हूं। मैं एक सी ++/सी # डेवलपर हूं, इसलिए इस प्रकृति की जावास्क्रिप्ट मेरे लिए बहुत नई है।
टाइपप्रति ऑब्जेक्ट्स
JSON कुछ इस तरह दिखेगा:
{
"ID": 2,
"Name": "Northwind 2",
"RootTargetID": 2,
"RootTarget": {
"ID": 2,
"Name": "Customers",
"ParentID": null,
"FilterID": 2,
"Queries": [],
"Children": [],
"Parent": null,
"Selects": [
{
"ID": 3,
"Name": "CompanyName",
"Aggregation": "None",
"TargetID": 2,
"Target": null
},
{
"ID": 4,
"Name": "ContactName",
"Aggregation": "None",
"TargetID": 2,
"Target": null
}
],
"Filter": {
"FilterClauseID": 2,
"Type": "AND",
"Left": null,
"Right": null,
"ParentID": null,
"QueryTargets": [],
"Parent": null,
"Children": [
{
"FilterClauseID": 3,
"Type": "NE",
"Left": "Country",
"Right": "Germany",
"ParentID": 2,
"QueryTargets": [],
"Parent": null,
"Children": []
},
{
"FilterClauseID": 4,
"Type": "NE",
"Left": "Country",
"Right": "Mexico",
"ParentID": 2,
"QueryTargets": [],
"Parent": null,
"Children": []
}
]
}
}
}
समाधान – DIGGIDY