Avalados por :

Como definir variáveis globais em arquivos JS do UI5 gerados pelo Eclipse: Guia para evitar erros.

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 4 Vistas
0
Cargando...

Olá a todos

Como definir variáveis globais nos arquivos JS do UI5 gerados pela ferramenta Eclipse? Eu queria uma variável que pudesse ser usada em toda a visualização JS e no arquivo do controlador, ou pelo menos dentro do mesmo arquivo de visualização JS, em diferentes métodos.

Adicionei algumas variáveis logo abaixo do controlador da visualização, mas encontrei muitos erros.

Por exemplo:

sap.ui.jsview( poc.Initial", {/** Especifica o controlador pertencente a esta visualização* No caso de não estar implementado ou retornar "null", esta visualização não possui um controlador.* @memberOf poc.Initial// Algumas variáveis globaisvar aContent = {};var aControls = [];var Matlayout = new c.layout.MatrixLayout({width:"auto"}), getControllerName : function() { return "poc.Initial"; },
Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Obrigado Andreas

Você está dizendo que escrever isso no método onInit() é uma melhor forma de definir variáveis?

this.aControls = [];

Em que isso difere de window.aControls = [];

Desculpe se as perguntas são muito bobas. Venho do ambiente Java web dynpro, não estou muito familiarizado com html e codificação de scripts.

Saudações

Aakash

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Aakash,

Por que não declarar simplesmente suas variáveis globais no arquivo index.html ou em outro arquivo .js personalizado?

Atenciosamente,

Christian

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Obrigado Sumit, Andreas

Eu queria usar uma variável global para controlar/persistir o conteúdo dentro de um Shell. Cada item de trabalho no shell/subitens no shell terão um conteúdo de IU diferente, então, conforme o item de trabalho selecionado, o conteúdo será exibido e o conteúdo anterior será removido.

Conforme o item de trabalho selecionado, tenho essas declarações Switch, que definem o conteúdo específico no canvas principal do Shell.

caso: Item1

por exemplo oShell.setContent(aControls[1], true)

caso: Item1

por exemplo oShell.setContent(aControls[1], true)

< embora de alguma forma não consigo remover o conteúdo antigo>

Esta é a maneira correta de criar conteúdo dentro de um Shell?

Agradeceria se pudesse ajudar

Obrigado, Aakash

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Olá Aakash,

A resposta de Sumit é uma possibilidade. Ou você pode, por exemplo, no método init dizer:

window.aControls = [];

O que seu código fez foi escrever as definições de variáveis no meio de um objeto semelhante a JSON, então a sintaxe do JS está quebrada.

Mas o que acontece quando a Visualização é usada várias vezes? As variáveis são realmente globais? Talvez dizer this.aControls = [];

escrito no método init seria melhor, então é uma variável de instância. Ainda é possível acessar essa variável a partir do Controlador:

var c = this.getView().aControls;

Em geral, o uso de variáveis globais nem sempre é considerado uma boa prática.

Saudações

Andreas

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?