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), - это подчеркнет, что "элементы" не могут быть найдены.

Другие вопросы по тегам