私のtypescriptアプリでJSONデータを読んでいます。私はJSONからインターフェイスを作成するこのツールJSON2TSを見つけました。そのため、typescriptはjsonに含まれている必要があることを認識します。typescriptインターフェイスでjsonを使用するには?
マイJSON:
{
"questions": [
{
"text": "Is this a question?",
"answers": ["yes", "no", "maybe", "maybe not"],
"correct":1
}]
}
生成されたインタフェース:
declare module namespace {
export interface Question {
text: string;
answers: string[];
correct: number;
}
export interface RootObject {
questions: Question[];
}
}
これらのインタフェースはd.tsファイルに保存され、コードで参照する必要があります。私の質問:実際にjsonデータをajaxでロードした後、実際にどのように使用するのですか?
var questions = <RootObject>functionThatReturnsYourJSONData().questions;
コードがnamespace
名前空間に含まれていない場合、これは動作するはずです:あなたのコードがnamespace
名前空間にある場合、あなたはこのようにそれを行うことができ、その定義ファイルで
私はあなたが求めるものについてはよく分かりません。いくつかのajaxサービスから取得したオブジェクトがある場合、そのプロパティとメソッドにはいつでもアクセスできます。これらのすべてのインターフェイスは、適切に入力する機能を提供しています。 – Alex
はい、ただし、型を宣言していない場合は型付きは許可しません。もちろん、あなたはいつでも型として "any"を使うことができますが、IDEの利点(コード補完とエラーチェック)を持たないのです – Kokodoko
ああ、あなたの質問はあなたのjsonオブジェクトの使い方ではなく、 jsonデータ – Alex