From BladeX to Blade

When you register a component


with this HTML

{{-- resources/views/components/myAlert.blade.php --}}
<div class="{{ $type }}">
   {{ $message }}

and use it in your Blade view like this,

<my-alert type="error" :message="$message" />

our package will replace that HTML in your view with this:

@component('components/myAlert', ['type' => 'error','message' => $message,])@endcomponent

After that conversion Blade will compile (and possibly cache) that view.

Because all this happens before any HTML is sent to the browser, client side frameworks like Vue.js will never see the original html you wrote (with the custom tags).