與參數綁定,我有以下問題:SAPUI5 XML查看來自同一型號
我想開發一個購物車,並具有與產品牌的櫃檯問題,我有問題,顯示在摘要的數據視圖。
對於這個項目我使用XML視圖,我已經有很多關於綁定。當我想要綁定靜態路徑時,我沒有任何問題。數據來自名爲「cartData」的JSON模型。
示例(從goToCart按鈕)
...
text="{cartData>/currentUser}";
...
一切正常顯示(在本例中),但我的項目,我需要綁定一個主要結合(對車的計數器),而在這個路徑需要參數爲用戶。將其保存在路徑中,如示例中所示。
我已經嘗試了很多的組合來完成這個bug,但現在我沒有更多的想法:-(
我試過組合的例子:
text="{ ${cartData>/cartOfUser/} + {cartData>/currentUser} + '/roles/counter'}"
編輯:
我的代碼一些虛擬部:
我的按鈕(doen't工作但我需要怎麼...):
<m:Button
id="details.Btn.ShowCart"
text="{ parts: [
{path: 'cartProducts>/cartEntries/'},
{path: 'cartProducts>/currentChoice/'},
{path: '/addedRoles/counter'}
]}"
type="Emphasized"
icon="sap-icon://cart-3"
iconFirst="true"
width="auto"
enabled="true"
visible="true"
iconDensityAware="false"
press="showCart"/>
如何看待在localStorage的我JSON型號,如:
{
"cartEntries": {
"counter": 2,
"UserId12": {
"UserId": "UserId12",
"Email": "Email12",
"dateCreated": "2017-07-14T13:18:13.632Z",
"dateUpdated": "2017-07-14T13:18:13.632Z",
"addedRoles": {
"counter": 0
},
"existingRoles": {
"counter": 0
}
},
"UserId14": {
"UserId": "UserId14",
"Email": "Email14",
"dateCreated": "2017-07-14T13:18:30.415Z",
"dateUpdated": "2017-07-14T13:18:30.415Z",
"addedRoles": {
"counter": 0
},
"existingRoles": {
"counter": 0
}
}
},
"currentChoice": "UserId14"
}
我的JSON數據與評論: I need to grab the value from "currentChoice", to search with this information in cartEntries for the right counter
現在怎麼按鈕看: It show the data not in the correct way. Please ignore the zero at first...
的目標是將「currentChoice」的值作爲「參數」來爲正確的用戶調用信息。
我也試過:
text="{= ${= 'cartProducts>/cartEntries/' + ${cartProducts>/currentChoice/} + '/addedRoles/counter' } }"
什麼工作,但我需要更多的 「動態」 是:
text="{cartProducts>/cartEntries/UserId14/addedRoles/counter}"
我希望你小子現在知道我的意思... -/
問候
解決方案
我如何解決這個問題:
添加格式化到按鈕:
/' 格式:' .formatter。_getCartInt」 }」 類型= 「強調」 圖標= 「SAP-圖標://車-3」 iconFirst = 「真」 寬度= 「自動」 啓用= 「真」 可見= 「真」 iconDensityAware = 「假」 按= 「showCart」/>
實現在我formatter.js文件格式:
_getCartInt:功能(SP1){ VAR sCurrent = SP1 .currentChoice; var sFinalString =「cartProducts>/cartEntries /」+ sCurrent +「/ addedRoles/counter」; ()「);}}} this.getView()。byId(」btn.ShowCart「)。bindProperty(」text「,{path:sFinalString,type:new sap.ui.model.type.Integer()}); }
你將需要格式化(或不同的結合方法)。如果你分享一些代碼可能可以幫助更多:) –
「cartOfUser」屬性有什麼用途? –
@AndriiNaumovych:它包含關於用戶和購物車的信息。 – STOXX50