2

そのため、Kendo UI ライブラリの一部を TypeScript に変換する作業を行っていますが、Model クラスに行き詰まっています。問題は、フィールドの指定方法です。

次の配列があるとします。

 function someModelFields() {
    return {
        Id: { editable: false, nullable: false, defaultValue: emptyGuid },
        ScenarioId: { editable: false, nullable: false, defaultValue: emptyGuid },
        UnitId: { editable: false, nullable: false },
        UnitNumber: { type: "string", editable: false },
        SquareFootage: { type: "number", editable: false }
    };
};

...これを TypeScript でモデル化するにはどうすればよいでしょうか。プロパティ名は何でもかまいませんが、プロパティの型はわかっています。これが私がこれまでに持っているものです:

export module Kendo {

    export module Data {

        export class FieldTypeEnum {
            static string: string;
            static number: string;
            static boolean: string;
            static date: string;
        }

        export class ValidationDefinition {
            required: bool;
        }

        export class FieldDefinition {
            defaultValue: string;
            editable: bool;
            nullable: bool;
            parse: () => any;
            type: FieldTypeEnum;
            validation: ValidationDefinition;
        }

        export class ModelDefinition {
            id: string;
            fields: any[];
        }

「フィールド」の定義が間違っていることはわかっています。また、ModelDefinition.fields と FieldDefinition 型の動的プロパティ名の間に型がないこともわかっています。

アイデア?前もって感謝します!

4

1 に答える 1

0

TypeScriptでこれをモデル化する方法は、すでに持っているものを超えて実際にはありません。

于 2012-11-16T04:00:36.277 に答える