Laravel Livewire事件侦听器未触发

时间:2020-09-29 03:33:23

标签: laravel event-handling event-listener laravel-livewire

我当前正在使用事件发射器来渲染一些Javascript以显示Stripe信用卡输入。理想的结果是显示一个模式,然后使用Javascript事件侦听器呈现信用卡输入。

我有一个类似的按钮来显示Jetstream模式:

<x-jet-secondary-button type="button" wire:click="showCreateModal">Show</x-jet-secondary-button>

在Livewire组件中,这是方法:

public function showCreateModal()
{
    $this->emit('loadCard');

    $this->showCreate = true;
}

然后是Javascript事件侦听器:

<script type="text/javascript">
    var STRIPE = Stripe('{{ config("cashier.key") }}');
    var elements = STRIPE.elements();

    Livewire.on('loadCard', function () {
        setTimeout(function() {
            var card = elements.create('card');
            card.mount('#card-element');
        }, 500)
    });
</script>

我尝试了3或4个不同的版本,到目前为止还没有运气。任何帮助/反馈将不胜感激。

1 个答案:

答案 0 :(得分:0)

发现了问题。我将Vue加载到@livewireScripts刀片指令顶部的页面中。通过删除Vue,解决了该问题。