Importando Componentes no Blazor

Assim como em qualquer outro projeto dotnet, em um Componente Blazor podemos utilizar outro Componente, que está em outro namespace, ou até em outro assembly.

Nesse artigo veremos quais as opções disponíveis que temos para importar componentes no Blazor.

@using

A forma tradicional de ter acesso à componentes de um outro namespace, é através a diretiva @using. Ela funciona da mesma forma que utilizamos o using em classes dotnet. Com algumas restrições que veremos mais abaixo.

Sendo assim, como você pode ver na Figura 1, basta incluir a diretiva @using que você terá acesso aos componentes desse namespace.

Figura 1: Importando componente do namespace MyBlazorApp.Shared

Para saber qual é o namespace de um componente, basta ver em qual pasta ele foi criado. Usando o nome do projeto como base, você terá o namespace onde a classe do componente será criada, veja:

namespace = [Nome-do-Projeto].[Pasta].[SubPasta]

Assim como em qualquer projeto dotnet, todos os componentes criados dentro de um mesmo namespace, podem ser utilizados sem a necessidade dessa importação.

Fully Qualified Names

Se você não quiser utilizar a diretiva @using, ainda tem a alternativa de utilizar um componente referenciando-o com o seu Fully Qualified Name. Esse é o nome completo de uma classe, incluindo o seu namespace.

Veja na Figura 2 como podemos utilizar um componente através do seu Fully Qualified Name.

Figura 2: Usando o Fully Qualified Name do Componente

Restrições

Temos algumas coisas que são comuns na utilização de namespaces no dotnet, que não são suportadas em um componente Blazor. São elas:

  • O qualificador global:: não é suportado.
  • O alias de Namespace também não é suportado (ex: @using Foo = Bar).
  • Nomes parcialmente qualificados também não são suportados. Ou seja, você não pode importar o seguinte namespace: @using MyBlazorApp, e tentar o usar o componente assim: <Shared.SurveyPrompt>.

Conclusão

Tirando essas restrições, a forma de importar namespaces em um Componente Blazor, é equivalente à forma de importar namespaces em classes dotnet.

Lembre-se que também podemos utilizar a diretiva @using em arquivos _Imports.razor, para importar namespaces em todos componentes de uma determinada pasta.

Se você ainda não conhece os arquivos _Imports.razor, dê uma olhada nesse artigo aqui.

Grande Abraço e até o próximo!

Publicidade

Um comentário em “Importando Componentes no Blazor

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

Conectando a %s