Obtenha uma resposta mais rápida com suporte para parâmetros de consulta de URL opcionais

Para melhorar o desempenho e a flexibilidade, adicionamos suporte a parâmetros de consulta para navigateToURL. Expressões {!EL} são substituídas automaticamente por uma expressão Aura dinâmica. A expressão Aura é atualizada no tempo de execução para parâmetros fornecidos pela página atual, como parâmetros da rota ou parâmetros de consulta de URL. Essa alteração melhora o desempenho porque somente componentes necessários durante eventos de navegação são carregados, em vez de recarregar toda a página. Porém, essa alteração pode significar que os componentes personalizados podem não funcionar como o esperado.

Onde: Essa alteração afeta comunidades do Lightning acessadas com o Lightning Experience e o Salesforce Classic. As comunidades estão disponíveis nas edições Essentials, Enterprise, Performance, Unlimited e Developer.

Por quê: Essa alteração afeta os componentes do Lightning no tempo de execução que têm as seguintes características.
  • O componente tem um atributo String obrigatório, que não tem um valor padrão.
  • O componente tem um atributo de design correspondente.
  • O valor do atributo de design é uma expressão "{!EL}". A expressão pode ser definida como o valor padrão no atributo de design ou alterando o valor nas propriedades do componente do Community Builder.
  • O componente fica em uma página que não tem parâmetro da rota ou das strings de consulta de URL para o valor {!EL}.
Aviso

Aviso

Anteriormente, um componente não era carregado se cumprisse todas essas características. Da versão Winter '19 em diante, o Aura tenta carregar o componente mesmo assim, o que significa que alguns componentes agora podem aparecer com erros em uma página.

Por exemplo, se o seu componente tiver um atributo necessário com um valor EL (como {!urlName}, {!topicId}, {!recordId}) e esse componente estiver em uma página que não forneça esse parâmetro, ele não aparecerá na sua página com um atributo indefinido.

Como: Se você tiver escrito componentes personalizados que cumprem as características acima, verifique seu código para garantir que não esteja executando operações inseguras em atributos de componente que podem agora estar indefinidos.

Você também pode adicionar uma condicional em torno da marcação do seu componente com base em se o atributo está vazio ou não.
<aura:renderIf isTrue="{! !empty(v.myAttribute) }">
...
</aura:renderIf>
Como sempre, recomendamos que você teste sua implementação em um sandbox antes de implantá-la em produção.