シーンの移動
シーンの移動はApplication
クラスで実装されてるgotoView
関数を利用します。
各クラスの親クラスにappというgetterを実装してあり、下記のコールを行う事でシーン移動が実行されます。
this.app.gotoView("シーン名");
SPAモード
SPAモードを有効にした場合は、URLでのシーン遷移も可能です。
https://example.com/quest/list
とアクセスした場合
this.app.gotoView("quest/list");
と同義になります。
レスポンスデータ
next2d.fw.response
に格納されたレスポンスデータはgotoView
関数がコールされるとリセットされ、routing.json
に設定されたrequests
にリクエストを行い、取得した値を新たにレスポンスデータを格納します。但し、cache
がtrue
に設定されている場合は、cacheされた情報を再利用します。
QueryString
Next2D FrameworkではQueryStringが利用できます。
下記のサンプルは同じシーンを表示する事と同義になります。
関数の場合
this.app.gotoView("quest/list?questId=10&areaId=1");
URLの場合
https://example.com/quest/list?questId=10&areaName=sample
QueryStringの値はnext2d.fw.query
に格納されます。
親クラスを継承している場合はquery
から取得可能です。
性質上、全ての値をStringとして格納するので、numberなどはキャストして利用するのがお勧めです。
const questId = this.query.get("questId") | 0;
const areaName = this.query.get("areaName");
この様に、同一のシーンで動的な変化を行いたい時などに便利です。
明日は、各シーケンスでコールされるcallback
機能について記事を書きたいと思います。