私はPythonの背景から来て、最近はTypeScriptとAngular2を使ってプログラミングを始めました。 TypeScriptを使用してJSONオブジェクトからキーを取得する方法を知りたい。 私はそうのような応答があります:私はJson操作TypeScript角度2
removeMetaData (my_data: string){
//(Various manipulation)...etc
}
関数にこのオブジェクトを渡す
response.text()
を私が代わりにtext()
のjson()
メソッドを呼び出すことができることを読みました。私がそうするなら、私はmy_data
のために使うべきタイプは何ですか?
その後、 は私のJSONは次のようになります場合:
{
"count": 100,
"next_page": "http://www.test.com/users/?page=2",
"prev_page": "http://www.test.com/users/?page=3",
"results":[
{
"username": "johnny"
},
Etc....
]
がどのように私はそれを解析していますか? 私はインターフェイスを使用しなければならないかもしれないが、私は方法を理解していないと読んだ。
Pythonでは辞書のキーを取得するのにちょうどresponse["next_page"]
だから、その値をクラス内の変数に割り当てることができます。それはまさに私がコンポーネント内で達成しようとしていることです。
ありがとうございます。
ADDITION
list() {
this.requestService.get(this.api_path)
.subscribe(
response => this.populate(response.json()),
error => this.response = error.text()
)
}
populate(payload: object) {
this.count = payload.count;
this.next = payload.next;
this.previous = payload.previous;
*payload.results => this.users = payload.results;******
}
あなたの答えが気に入っていますが、私が何をやっているのか理解したいのですが、星印の付いた線が間違っていると教えてください。 –
あなたの解析されたJSONで 'results'が利用可能で、 'users'があなたのクラスで宣言されている場合、それはまったく問題ありません。 「ユーザー」には、「結果」からの価値を受け入れるための正しいデータ型が必要であることに留意してください。 矢印機能を使用している場合は、次のようになります。 (payload.results)=> this.users = payload.results; –