私は2つのビューを持っています。 View1とView2。私は、入力フィールドからパラメータを取得し、これらのパラメータに基づいてView2でデータを表示するためにView1を使用しています。今私はビュー間でデータを渡す方法を混乱させる。誰も私にそれについての洞察を与えてください、そして作業コードで、そして各行が何をしていますか?SAP UI5のXMLビュー間でデータを渡す
おかげ
あなたはこのようView1.view.xmlで入力フィールドを持っている場合たとえば、私は2つのビューを持っています。 View1とView2。私は、入力フィールドからパラメータを取得し、これらのパラメータに基づいてView2でデータを表示するためにView1を使用しています。今私はビュー間でデータを渡す方法を混乱させる。誰も私にそれについての洞察を与えてください、そして作業コードで、そして各行が何をしていますか?SAP UI5のXMLビュー間でデータを渡す
おかげ
あなたはこのようView1.view.xmlで入力フィールドを持っている場合たとえば、:
<Input id="id" value="Initial Value" editable="true" />
あなたはそれぞれのコントローラーのフィールド値を取得することができると言う、View1_cont.controller.js他のコントローラで後で取り出すことができるモデルを設定します。以下に示すように
var oData = {
input: this.getView().byId("id").getValue()
};
var oModel = new sap.ui.model.json.JSONModel(oData);
sap.ui.getCore().setModel(oModel,"modelName");
次に第二ビューのコントローラに、値を取得することができ、IDが「テキスト」のビュー要素が設定され、View2_cont.controller.jsを言う:テキスト
var oData = sap.ui.getCore().getModel("modelName").getData();
this.getView().byId("text").setValue(oData.input);
View2.view.xmlの要素である:
<Text id="text"/>
複数の入力フィールドがある場合はどうすればよいですか? var oDataに加えた変更は何ですか?申し訳ありませんがJSの弱点です。そして、多くの多くのお返事に感謝します。入力された3つの値のうちの1つを返します。 –
var oData = { input1:this.getView().Id( "id1")。getValue()、input2:this.getView()。byId( "id2")。getValue()、input3:this.getView ).byId( "id3")。getValue() };等々!お役に立てれば。 –
ええ、推測しました、怠け者になってごめんね!どうもありがとうございました。 :) –
の可能性のある重複[SAPUI5:航行中(ルーティングパラメータに加えて)コントローラ間のデータの受け渡し(https://stackoverflow.com/questions/48831967/sapui5-データを渡す間のデータ – boghyon