2017-01-25 12 views
-1

私は2つのビューを持っています。 View1とView2。私は、入力フィールドからパラメータを取得し、これらのパラメータに基づいてView2でデータを表示するためにView1を使用しています。今私はビュー間でデータを渡す方法を混乱させる。誰も私にそれについての洞察を与えてください、そして作業コードで、そして各行が何をしていますか?SAP UI5のXMLビュー間でデータを渡す

おかげ

あなたはこのようView1.view.xmlで入力フィールドを持っている場合たとえば、
+0

の可能性のある重複[SAPUI5:航行中(ルーティングパラメータに加えて)コントローラ間のデータの受け渡し(https://stackoverflow.com/questions/48831967/sapui5-データを渡す間のデータ – boghyon

答えて

0

<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"/> 
+0

複数の入力フィールドがある場合はどうすればよいですか? var oDataに加えた変更は何ですか?申し訳ありませんがJSの弱点です。そして、多くの多くのお返事に感謝します。入力された3つの値のうちの1つを返します。 –

+0

var oData = { input1:this.getView().Id( "id1")。getValue()、input2:this.getView()。byId( "id2")。getValue()、input3:this.getView ).byId( "id3")。getValue() };等々!お役に立てれば。 –

+0

ええ、推測しました、怠け者になってごめんね!どうもありがとうございました。 :) –

関連する問題