2017-02-01 42 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