###前提・実現したいこと
現在Play Framework 2.56(Java)を使用して
WEBアプリケーションを作成しています。
作成するページとおおまかな流れは、トップ画面に一覧があり、(検索結果を初期表示する)
詳細ボタンを押下して次ページで詳細情報を表示するといった単純なものです。
(シングルページではありません)
具体的には画面初期表示時にサーバー側でデータベースからデータを取得して
そのデータをjson形式に整形、クライアントに返し
受け取ったデータをクライアントで
vue.js(他のフレームワークも検討中)を使用してデータバインド、
画面に表示しようとしています。
その際、サーバー側で下記のコードの様にして初期表示画面の指定、また展開したいデータを
指定しているのですが画面でのjsonデータの取得方法がわかりません。
playには画面側に用意されているものとしてscala.html
があるのですがその機能は使用せずjavascriptでサーバーからわたってきたデータを
展開したいと考えています。
下記コードでレスポンスを返す場合、jsonを一緒に返し
javascriptで取得、バインドすることは出来ないのでしょうか。
もし上記のような事が出来ないのであれば
検索実行などを行わず、まず画面を初期表示し、
その後ajaxで通信し、データを検索、vue.jsでバインドする、
などのような手順も検討しています。
その選択肢をとった場合に一覧画面でボタンを押下した際、
指定画面へjsonを返し画面で受け取る事が出来ないのであれば
一旦、詳細画面を表示、その際検索条件となる値を遷移先画面に渡して
その画面でajaxを使用してデータを特定、取得といった手順しか
思いつきませんでした。
もし他にも良い方法があるようでしたら教えてください。
私としては最初に記載した方法で実装できることを期待しています。
よろしくお願い致します。
###発生している問題・エラーメッセージ
エラーメッセージ等はありません
エラーメッセージ
###該当のソースコード
public class Administrate extends Controller {
public Result index() {
AdministrateService aService = new AdministrateService();
//データ検索(getInitialDataはjsonデータを返却します)
return ok(views.html.index.render(aService.getInitialData()));
}
###試したこと
###補足情報(言語/FW/ツール等のバージョンなど)
Java 1.8
Play Framework 2.56
vue.js 1.x または Angular 1.x
回答2件
あなたの回答
tips
プレビュー