2017-02-01 16 views
0

Я работаю над приложением SAP UI5 в своей компании (поэтому я не могу опубликовать много примеров), и у меня возникают проблемы с использованием DatePicker. Я определил его в XML обычным способом (см. Ниже), используя пространство имен sap.m. Все это хорошо работает на сервере разработки. Проблема заключается в том, когда он переносится на сервер тестирования, во всплывающем календаре возникает ошибка (см. Ниже). Эта ошибка не возникает на сервере разработки. Конкретно, причиной ошибки является кнопка рядом с полем ввода, которое позволяет выбрать из мини-календаря.Неверная ошибка с использованием 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) 

EDIT:

См @Developer пост ниже. Похоже, что когда библиотека вызывает конструктор календаря, он не включает метод getLegend(). На его посту ниже вы можете видеть, что его функция определена, но когда я делаю то же самое на своем тестовом сервере, функция появляется как неопределенная. Как это возможно???

+0

Ну, это m.getLegend функция? Вы называете это как функцию? Что такое m? Вам придется опубликовать немного кода. Мы не можем догадаться, в чем проблема ... –

+0

Ошибка возникает из встроенных библиотек. MonthRenderer и каждый другой класс, упомянутый в сообщении об ошибке, не являются частью кода, который я написал. Я должен был упомянуть об этом. – SAPUI5GUY

+1

Можете ли вы проверить, использует ли dev и системы качества ту же версию UI5? –

ответ

0

Я нашел строку, в которой создана функция getLegend(), вы можете изучить конструктор для класса Calendar.

enter image description here

+0

Посмотрите на него и вернитесь – SAPUI5GUY

+0

Попробуйте загрузить библиотеку 'sap.ui.unified', прежде чем использовать его в Datepicker. – Developer