KoGrid не работает в рамках Durandal JS
Как я могу связать KoGrid на странице просмотра Durandal JS. Код, приведенный ниже, не работает.
вид (HTML)
<div id="functiontable" class="form-actions">
<div style="height: 200px" data-bind="koGrid: {
data: items, columnDefs: [{ field: 'id', width: 140 },
{ field: 'name', width: 100 },
{ field: 'price', width: 150 }
],
autogenerateColumns: false,
isMultiSelect: false,
enableSorting: true
}"></div>
</div>
ViewModel(JS)
define([ 'repositories/customerRepository', 'plugins/router', 'plugins/http', 'durandal/app', 'knockout'], function (customerRepository, router, http, app, ko) {
var items = ko.observableArray([
{ id: 1, name: "abc", price: "asds" },
{id:1,name:"abc",price:"asds"},
]);
return {
router: router,
items:items,
activate: function () {
},
attached: function (view) {
},
};});
Если я проверяю элемент из браузера, сетка загружает его значение. Я не знаю, как решить проблему. Кто-нибудь может мне помочь?
1 ответ
Элементы должны быть возвращены для того, чтобы они использовались вашим представлением, поэтому:
items: ko.observableArray([
{ id: 1, name: "abc", price: "asds" },
{id:1,name:"abc",price:"asds"}
]),
activate: function () {
}
Совет При выполнении этого материала используйте отладчик на стороне клиента, такой как веб-инструменты Chrome (F12 в Chrome), - это подчеркнет, что "элементы" не могут быть найдены.