2017-08-01 4 views
1

私の活字体のアプリでJSONファイルをロードした後、私はJSONデータのためのIDEでコード補完を取得するためのインタフェースを使用します。作品JSONデータのTypescript宣言ファイルでのダッシュの使い方は?

interface Component { 
    name:string 
} 

が、JSONはまた、ダッシュを持つプロパティen-USが含まれています。 ..それはインターフェイスで許可されていません...どうすればこの問題を解決できますか?

{ 
    "name" : "boink", 
    "en-US" : "hello there" 
} 

答えて

1

あなたが好きなあなたのインタフェース内の引用符で属性を設定することができます。

interface Component { 
    'en-US': string; 
} 

しかし、あなたは、あなたが引用符を経由して、あなたがそれを使用するたびに、プロパティを選択しなければならないことに注意してください:

let myComponent: Component = { 
    'en-US': 'hello there' 
} 
let translation = myComponent['en-US']; 
+0

ありがとうございます。 'lockedのように、プロパティをオプションにする方法はありますか? :true'プロパティは 'locked'オプションです。もし私が? 「en-US」とは? :string'は動作しません。 – Kokodoko

+1

私のために '' en-US '?はうまく動作します(typescript 2.4,2を使用) – cyrix

関連する問題