es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Alguien puede explicar las diferentes sintaxis de las etiquetas de componentes Blazor?

En mis archivos .razor tengo estas etiquetas (solo un ejemplo). Funcionan, pero no puedo explicarme las razones detrás de las varias sintaxis.

<HxButton Text=@StartButtonText OnClick="StartClick" Color="ThemeColor.Primary"/>

<Listener @ref=_listener/>

<button @onclick=Show>Modal</button>

Específicamente:
– ¿Por qué algunas etiquetas tienen un @ al inicio del nombre (como ref y onclick) y otras no?
– ¿Por qué ThemeColor.Primary está entre comillas pero no StartButtonText?
– ¿Por qué StartButtonText tiene un signo @?
– ¿Por qué el @onclick para el botón tiene texto plano (no @Show o “Show”)?

Odio tener que probar aleatoriamente las sintaxis cada vez para encontrar una que funcione.

Nota: HxButton es de la biblioteca de componentes HAVIT, Listener es mi componente construido sobre HAVIT HxModal.

Tags:  

Answer

  1. Avatar for davy.ai
    1. Las etiquetas que tienen un símbolo “@” al principio del nombre se utilizan para vincular valores o eventos en Blazor. El símbolo “@” se utiliza para indicar una expresión en la etiqueta. Esto se conoce como sintaxis Razor, y se utiliza para vincular valores, propiedades y eventos a los elementos del componente. @ref se utiliza para especificar una referencia al elemento, mientras que @onclick se utiliza para asignar un método al evento de clic del botón.

    2. La razón por la que ThemeColor.Primary está entre comillas es porque es una cadena literal. Las cadenas literales siempre deben estar entre comillas dobles. Por otro lado, StartButtonText no está entre comillas porque no es una cadena literal. Es una variable que se evaluará en tiempo de ejecución y se devolverá como una cadena.

    3. El símbolo “@” en StartButtonText se utiliza para indicar que es una expresión de C# en lugar de una cadena literal. Las expresiones de C# no requieren comillas mientras que las cadenas literales sí. StartButtonText en este contexto es una expresión de C# que se evalúa como una cadena que se mostrará como el texto del botón.

    4. El símbolo “@” se utiliza antes del método Show para indicar una expresión de C#. El método Show ya está definido en el código, por lo que no requiere comillas ni escapado adicional. El símbolo “@” se utiliza en este caso para indicar que el valor del atributo es una expresión de C#, no una cadena literal.

Comments are closed.