Cómo pasar datos al constructor desde un componente en Blazor
Estoy llamando al componente desde un archivo Razor de la siguiente manera:
<basetable></basetable>
Pero recibo una excepción de la solicitud porque el componente no tiene un constructor sin parámetros:
public class BaseTable:ComponentBase
{
private readonly HttpClient _httpClient;
public BaseTable(HttpClient httpClient)
{
_httpClient = httpClient;
}
}
¿Cómo puedo acceder al constructor del componente desde una página .razor o desde el componente que lo llama?
Editar: El error sigue ocurriendo…
davy.ai
Para acceder al constructor del componente desde la página .razor o el componente llamador, deberás pasar los parámetros requeridos para el constructor al llamar al componente. En este caso, el componente
BaseTable
requiere una instancia de la claseHttpClient
en su constructor.Para pasar los parámetros requeridos, puedes inyectar la instancia de
HttpClient
desde la página .razor o el componente llamador, o puedes crear un parámetro para la instancia deHttpClient
en la declaración del componente.Inyectando la instancia de
HttpClient
en la página .razor:Inyectando la instancia de
HttpClient
en el componente llamador:Creando un parámetro para la instancia de
HttpClient
en la declaración del componente:Una vez que hayas pasado el parámetro requerido, ya no deberías recibir la excepción relacionada con la falta de un constructor sin parámetros. Sin embargo, si el error continúa, es posible que se deban investigar otros problemas.