4

Guild Wars 2 APIの前に Falcor を使用して実験しており、それを使用してゲーム アイテムの詳細を表示したいと考えています。複数のデータソースを使用して異なる API の結果を結合できるルーターの構築に特に関心があります。

問題は、Guild Wars 2のアイテム IDが連続していないことです。次に例を示します。

[
    1,
    2,
    6,
    11,
    24,
    56,
    ...
]

items[100..120].nameそのため、そのリストにはほぼ確実に穴がたくさんあるため、クライアントにパスを書き込むことはできません。

ルーターにルートを追加しようとしたので、 をリクエストできますitemsが、それはクライアントの無限ループに送信されます。その試みは GitHubで見ることができます。

これを構造化する正しい方法に関する指針はありますか? もっと考えてみると、item.id代わりに欲しいのではないでしょうか?

4

2 に答える 2

0

Falcor の 'get' API を使用できます。複数の値を取得します。以下に示すように、必要なプロパティをいくつでも渡すことができます。

var model=new falcor.Model({
             cache:{       
                     genereList:[
                                    {name:"Recently Watched",
                                     titles:[
                                         {id:123,
                                          name: "Ignatius",
                                         rating: 4}
                                     ]    
                                    },
                                    {name:"New Release",
                                     titles:[
                                         {id:124,
                                          name: "Jessy",
                                         rating: 3}
                                     ]    
                                    }
                                ]
                            }

            });
            Getting single value
            model.getValue('genereList[0].titles[0].name').
            then(function(value){
               console.log(value);
           });

            Getting multiple values
            model.get('genereList[0..1].titles[0].name', 'genereList[0..1].titles[0].rating').
            then(function(json){
                console.log(JSON.stringify(json, null, 4));
            })
于 2016-04-03T05:11:32.383 に答える