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.

¿Puedo pasar datos a un componente de blade utilizando las llaves?

Estoy tratando de implementar una especie de interruptor de funcionalidades para usar con mis componentes. Me pregunto si es posible pasar datos a los componentes evaluándolos con {{ }} algo así como en:

La marca de tiempo UNIX actual es {{ time() }}.

Aquí está mi código:

El componente

<x-share-on-social-media :isOn="{{FeatureToggleUtility::isOn('share-on-social-media')}}"/>

La clase del componente

class ShareOnSocialMedia extends Component {

public $isOn;

/**
 * Crear una nueva instancia del componente.
 *
 * @return void
 */
public function __construct($isOn) {
        $this->isOn = $isOn;
    } 
.... 
}

Obtengo el siguiente error:

ParseError
error de sintaxis, inesperado token "<" (Vista: /....../resources/views/offer.blade.php)
http://localhost:8899/offer/30 
Tags:  ,

Answer

  1. Avatar for davy.ai

    El mensaje de error sugiere que hay un error de sintaxis en el código, específicamente con el uso del carácter “<” en el código.

    Una posible causa de este error podría ser el uso de etiquetas HTML dentro de la expresión Blade. Las expresiones Blade se evalúan antes de que se renderice cualquier HTML, por lo que las etiquetas HTML dentro de las expresiones no se analizarán correctamente.

    Para solucionar este error, elimina las etiquetas HTML de la expresión y vuelve a intentarlo. Por ejemplo:

    <x-share-on-social-media :ison="{{FeatureToggleUtility::isOn('share-on-social-media')}}"></x-share-on-social-media>
    

    Esto evaluará la expresión de alternancia de características y pasará el resultado como una propiedad al componente, sin errores de sintaxis.

Comments are closed.