1

我对 laravel livewire 很陌生,我一直在尝试将 pikaday js 添加到我的项目中,但不幸的是,我无法将选定的日期绑定到 livewire 的公共属性中。

主文件($datebox2 是 livewire 组件内的公共属性,但无论日期如何,它始终为空):

<div class="">
        <input x-text="$wire.set('datebox2', picker)" type="text" id="datepicker">
        @include('components._ndatetime-picker')
   </div>

components._ndatetime-picker.blade.php 文件

<div>
    <script src="https://cdn.jsdelivr.net/npm/pikaday/pikaday.js"></script>
    <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/pikaday/css/pikaday.css">

    <script src="pikaday.js"></script>
    <script>
        var picker = new Pikaday({ 
            field: document.getElementById('datepicker'),
            onSelect: date => {
                var year = date.getFullYear(),
                month = date.getMonth() + 1,
                day = date.getDate(),
                formattedDate = [
                    year,
                    month < 10 ? '0' + month : month,
                    day < 10 ? '0' + day : day
                ].join('-')
                document.getElementById('datepicker').value = formattedDate
            }
        });
    </script>
</div>

4

0 回答 0