0

これにはおそらく非常に小さくて単純な継承または拡張ソリューションがあることは知っていますが、この質問が私だけでなく多くの人に役立つことを願っています. そしてより速く。

たとえば、剣道 UI グリッドを設定する次のコードがあります。オブジェクトの 1 つのパラメーターの違いを除いて、同じビューの 2 つのグリッドに対してこのコードを正確に繰り返す必要がありtransport.read.dataます。modelとの定義を共有オブジェクトに分解できることはわかってcolumnsいますが、最終的にはグリッド構成全体を共有したいと考えています。おそらくjQuery拡張機能と呼ばれmyUserKendoGridますか?

    $("#availableUsersGrid").kendoGrid({
        dataSource: {
            transport: {
                read: {
                    url: "/Role/AvailableUsersJson",
                    data: { roleId: $("#Id").val() },
                    type: "GET"
                }
            },
            schema: {
                model: {
                    id: "Id",
                    fields: {
                        Id: { editable: false },
                        UserName: { editable: false },
                        EmployeeRefNum: { editable: false },
                        EmployeeSurname: { editable: false },
                        EmployeeFullNames: { editable: false }
                    }
                }
            }
        },
        columns: [
                { field: "UserName", title: "User Name" },
                { field: "EmployeeRefNum", title: "Emp. No." },
                { field: "EmployeeSurname", title: "Surname" },
                { field: "EmployeeFullNames", title: "Name" }
        ],
        selectable: "multiple, row",
        editable: false,
        sortable: true,
        pageable: true
    });
4

1 に答える 1

0

jQuery.extend()のメソッドを使用して、構成を簡単に複製できます。例えば:

var superDuperAwesomeConfiguration = {
    // moar configs go here, yo!
};

var copyCatConfigs = jQuery.extend(true, {}, superDuperAwesomeConfiguration);

// modify copyCatConfigs properties here

$("#gridA").kendoGrid(superDuperAwesomeConfiguration);
$("#gridB").kendoGrid(copyCatConfigs);
于 2012-04-13T08:18:17.610 に答える