Componentes de barbear vs Exibir componentes

8

Recentemente, atualizei do Asp .NET Core 2.2 para 3.1 e posso usar o Razor Components em páginas do razor. Eles se parecem basicamente com o View Components, exceto que ele usa blazor e tudo no mesmo arquivo. Eu tentei pesquisar, mas eu não li nada na documentação que diz para usar o Razor Components em vez de Exibir componentes.

Então aqui está a questão...

Qual é o sentido de usar o Razor Components em vez de exibir componentes no Razor Pages? É melhor? Eu sei que os componentes do View são um pouco difíceis de definir porque você precisa definir um modo de exibição padrão e um código por trás do arquivo com a lógica e não pode usar javascript nele, apenas no modo de exibição pai. A maioria dos meus aplicativos está cheia de View Components e eu queria saber quais são as vantagens de mudar para componentes de barbear?

Chacal
fonte
Depois de atribuir recompensa, achei esta resposta útil: stackoverflow.com/questions/59262491/…
Zygimantas

Respostas:

5

Enquanto os componentes de exibição são mais parecidos com vistas parciais asynchronous, DIamigáveis ​​e independentes. Eles são principalmente para view-onlyfins (sim, é possível adicionar alguns update logicvia AJAX, mas é mais como um hackdo que a feature) e são usados ​​principalmente para reutilizar unidades comuns de interface do usuário, como navegação, bloco de login, barra lateral etc.

Os componentes do Razor são uma espécie de componentes da interface do usuário "com todos os recursos", que podem ser facilmente aninhados, passam parâmetros pela hierarquia de componentes , aumentam e manipulam eventos da interface do usuário e assim por diante. Assim, você pode usá-los facilmente para gerenciar a interface do usuário do aplicativo ou até criar bibliotecas personalizadas de componentes da interface do usuário .

Dmitry Pavlov
fonte