1

TypeScriptを使用しています。

ファイルString.ts内に次のものがあります。

module Sgc.Sys {
    "use strict";
    export class String {       
        static trim(input: string): string {
            return input.replace(/^\s+|\s+$/g, "");
        };
//-- other methods below ...
    }
}

次に、Number.tsファイル(String.ts と同じフォルダーにあります) で、上で定義した Sgc.Sys.String.trim() メソッドを使用します。

module Sgc.Sys {
    "use strict";
    export class Number {

    static someMethod(input : string) : string {
            //-- some code
            var str = Sgc.Sys.String.trim(input);
            return str;

        };
    }
}

問題: Sgc.Sys.String のメソッド trim は、TypeScript によってエラーなしで受け入れられるように、上記のように定義/呼び出しする必要があります。ただし、実行時に Sgc.Sys.String が定義されていないため、 Sgs.Sys.String.trim(input) が例外を発生させます。

String.ts と Number.ts の両方が同じフォルダー ..\Sgc\Sys にある場合、 Sgc.Sys.Number 内から Sgc.Sys.String.trim を呼び出すにはどうすればよいですか?

ありがとう、MG

4

2 に答える 2

2

Number.tsファイルへの参照を追加する必要があります。

/// <reference path="String.ts" />
于 2012-10-24T19:57:32.670 に答える
0

実行時にエラーが発生した場合は、コンパイル済みの両方の JavaScript ファイルをページに含める必要があります。

コードサンプルに基づいて、モジュールの読み込みを使用していないと仮定しました。

<script src="/Sgc/Sys/String.js"></script>
<script src="/Sgc/Sys/Number.js"></script>

その他の注意事項...

TypeScript はデフォルトで ECMAScript 3 を対象としているため、"use strict" ステートメントは効果がありません。この機能を使用するには、ECMAScript 5 を対象にする必要があります。

于 2012-10-24T21:58:52.517 に答える