2017-02-01 69 views
0

我正在爲我公司的SAP UI5應用程序工作(所以我不能發佈太多示例),並且在使用DatePicker時遇到問題。我使用sap.m名稱空間以正常方式(見下文)在XML中定義了它。它在開發服務器中運行良好。問題是當它被傳輸到測試服務器時,彈出日曆會導致發生錯誤(請參閱下文)。此錯誤在開發服務器中不會​​發生。具體而言,錯誤原因是輸入字段旁邊的按鈕,可讓您從迷你日曆中進行選擇。奇怪的錯誤使用DatePicker,日曆構造函數失敗?

我注意到的一個奇怪事件是,如果我在另一個視圖中打開迷你日曆,它將在我遇到問題的視圖中工作。

如果有人看到類似的東西或知道任何可以幫助我解決這個問題,請讓我知道。錯誤全部來自內置庫,而不是來自我的書面代碼。

XML文件

<DatePicker id="blah blah" width="70%" value="blah blah" 
      editable="blah blah" 
      valueFormat="YYYY-MM-dd" change="ValidateDate" /> 

在控制檯中的錯誤:

MonthRenderer.js:6 Uncaught TypeError: m.getLegend is not a function 
    at Object.M.getDayHelper (MonthRenderer.js:6) 
    at Object.M.renderDays (MonthRenderer.js:6) 
    at Object.M.renderMonth (MonthRenderer.js:6) 
    at Object.M.render (MonthRenderer.js:6) 
    at constructor.R.renderControl (sap-ui-core.js:1089) 
    at I.renderControl (sap-ui-core.js:457) 
    at Object.C.render (CalendarRenderer.js:6) 
    at constructor.R.renderControl (sap-ui-core.js:1089) 
    at constructor.R.render (sap-ui-core.js:1093) 
    at I.render (sap-ui-core.js:457) 

編輯:

見@Developer後下。看起來,當庫調用Calendar構造函數時,它不包含getLegend()方法。在他的帖子下面,你可以看到他的函數被定義了,但是當我在我的測試服務器上做同樣的事情時,函數會顯示爲undefined。這怎麼可能???

+0

那麼,是m.getLegend的一個函數嗎?你是否像打一個功能一樣調用它?什麼是m?你將不得不發佈一些代碼。我們無法猜出問題所在...... –

+0

所有錯誤都來自內置庫。 MonthRenderer和錯誤消息中提到的其他每個類都不是我寫的代碼的一部分。我應該提到這一點。 – SAPUI5GUY

+1

您是否可以確認開發和質量系統是否使用相同版本的UI5? –

回答

0

我發現創建getLegend()函數的行,您可能需要調查Calendar類的構造函數。

enter image description here

+0

將查看它並取回 – SAPUI5GUY

+0

在Datepicker中使用它之前,嘗試加載'sap.ui.unified'庫。 – Developer