2016-08-10 11 views
1

Я хочу показать информационное окно для карт Google. Но данные или представление представляют собой вид ui5, как показано ниже,Получить DOM-ссылку на просмотр/управление SAPUI5

var oView = sap.ui.view({ 
    type : sap.ui.core.mvc.ViewType.XML, 
    viewName :"com.example.view.ListView"     
}); 

И этот вид прекрасен.

В основном у меня есть информационное окно Google и мне нужно, чтобы поместить это в этом информационном окне следующим образом,

var infowindow = new google.maps.InfoWindow({ 
    content: view, //Here I am getting below error 
    position: coordinate 
}); 
infowindow.open(map); 

Так я получаю

InvalidValueError: setContent: не строку; и Element-

В этом я знаю, что могу разместить domNode или строку внутри содержимого информационного окна google. Поэтому мне нужно знать, как мы можем преобразовать этот вид ui5 в domNode или любое другое решение.

ответ

1

Вы можете получить DOM ноду SAPUI5 View или контроля с использованием метода getDomRef

var infowindow = new google.maps.InfoWindow({ 
    content: view.getDomRef(), 
    position : coordinate 
}); 
infowindow.open(map); 

Пожалуйста, обратите внимание, что SAPUI5 View/Control имеет только DOM Reference после того, как он был первым оказаны. Кроме того, после потенциального переоценки вам может потребоваться повторное применение вышеуказанного кода.

BR Chris

+0

Благодарим человека, но я хочу получить его перед тем, как изобразить где-нибудь на экране. –

+0

ну, вы не можете прикрепить его к управлению sapui5 перед рендерингом. Почему он должен быть там до рендеринга? Вы можете прикрепить его к узлу dom, который существует до этого в вашем обычном html, и положение, которое абсолютно:/Не похоже на способ выхода. – cschuff

 Смежные вопросы

  • Нет связанных вопросов^_^