2016-03-02 56 views
0

我剛剛創建了一個屬性文件,用於存儲我的文本。 在此SAP Walkthrough屬性文件,文本後面的{0}也會顯示

爲SAPUI5的寫了這樣的代碼

showHelloButtonText=Say Hallo 
helloMsg=Hello {0} 

{0}是我想設置多個參數的情況下。但是現在彈出窗口還顯示{0}。所以輸出:

Hello {0} 

屬性文件只是在後綴「的.properties」月食「文件」,如果這能幫助。

感謝任何提示:)

+0

我不知道爲什麼你的問題被downvoted。當然,如果你只是遵循演練,那麼你所描述的錯誤將不會發生。但是如果你在XML視圖中綁定'helloMsg',那麼你實際上會得到這種行爲。你可能不得不添加一個自定義的格式化程序,我會看看這個。 – Marc

回答

-1

在SAP的例子演練演示兩種方式如何設置你的消息的文本。

第一是一個靜態文本,由下式定義:

helloMsg = Hello 

第二種選擇是使用{}括號。這是對工作區中文件中保存的不同語言選項的引用。 當您更改瀏覽器的語言時,它將顯示文件中設置的不同語言。

0

最終結果可以在這裏看到:http://plnkr.co/edit/OGmJimjF2YZ46mv6DsF2?p=preview

我所做的是以下幾點:

當你想使用佔位符字符串綁定到一個控制在一個視圖,你必須提供一個格式化。

格式化採取佔位符字符串(Hello {0})和填料字符串,並將其組合

formatMsg: function(sMsg, sValue) { 
    return jQuery.sap.formatMessage(sMsg, sValue); 
} 

當你的元素呈現此格式已被調用,所以你必須將它添加到你的綁定

<Label text="{ 
    parts:[ 
    {path:'i18n>helloMsg'}, 
    {path:'/recipient/name'} 
    ], formatter:'.formatMsg'}" 
/> 

的格式有兩個參數,所以我們要提供兩個值:佔位符字符串和模型的價值。