मैं knockout.js के लिए नया हूँ करने के लिए बाध्यकारी और निम्न वस्तु एक उपयोगकर्ता को दर्शाने के लिए बाध्य करने के लिए कोशिश कर रहा हूँ:Knockout.js: जटिल वस्तु
{
"$id": "1",
"$values": [
{
"$id": "2",
"Locations": {
"$id": "3",
"$values": []
},
"Photos": {
"$id": "4",
"$values": []
},
"UserId": 1,
"Name": "Test User"
}
]
}
एक उपयोगकर्ता शून्य या अधिक स्थानों सकता है, और शून्य या और अधिक तस्वीरें।
दृश्य मॉडल:
function UsersViewModel() {
var self = this;
self.users = ko.observableArray();
var baseUri = 'http://localhost:46241/api/users';
$.getJSON(baseUri, function (data) {
self.users = data;
});
}
$(document).ready(function() {
ko.applyBindings(new UsersViewModel());
})
एचटीएमएल शामिल बाध्यकारी निम्नलिखित:
<ul id="update-users" data-bind="foreach: users">
<li>
<div><div class="item">User ID</div>
<input type="text" data-bind="value: $data.UserId" />
</div>
<div><div class="item">Name</div>
<input type="text" data-bind="value: $data.Name" />
</div>
</li>
</ul>
मैं बाहर फ्लैट इस गलत तरीके से कर रहा हूँ? या उपयोगकर्ता के ऑब्जेक्ट संदर्भ स्थान और फ़ोटो के संदर्भ में संभवतः बाध्यकारी को गड़बड़ कर रहे हैं?
प्रयोक्ता-आईडी और नाम आ ऑब्जेक्ट के "$ मान" भाग के तहत - जिसमें आप अपने बाध्यकारी में शामिल नहीं हैं। तथ्य यह है कि $ मूल्य $ $ के साथ शुरू होता है, आपको नॉकआउट के साथ परेशानी हो सकती है। यदि आपके पास ऑब्जेक्ट उत्पन्न होने का नियंत्रण है, तो यह थोड़ा सा साफ करने के लिए $ से छुटकारा पाने के लायक होगा। –
क्या आपका self.users = डेटा ठीक काम कर रहा है? मुझे नॉकआउट जेएस – ryadavilli