Laravel Livewire: ввод datepicker удален и не может быть отправлен

Laravel8, Jetstream, Livewire. Установил нормально и добавил обычные функции CRUD. Пока все хорошо, пока я не заметил следующую проблему после того, как добавил в форму Alpine.js и Pikaday.

  • Pikaday отлично работает при нажатии, а выбранная дата устанавливается в поле ввода.
  • Однако поле возвращается к исходному значению (поэтому оно стирается, когда исходное значение было нулевым) примерно через 1 секунду после того, как я что-то сделаю в любых других частях формы (введите другие поля, нажмите кнопку и т. д.) И выбранная дата не может быть сохранена в БД.
  • Если я ввел дату вручную, проблем не возникнет, и дата будет сохранена в БД.

Я новичок в Livewire и реализовал свой код, как указано здесь: https://laravel-livewire.com/docs/2.x/alpine-js#creating-a-datepicker

<form wire:submit.prevent = "schedule">        
    <label for = "xxxxDate">xxxx date:</label>
    <x-date-picker wire:model = "xxxx_date" id = "xxxxDate"/>

просмотры / компоненты / date-picker.blade.php

<div wire:ignore>
    <input
        x-data=
        x-ref = "input"
        x-init = "new Pikaday({ field: $refs.input });"
        type = "text"
        {{ $attributes }}
    >
</div>

Есть подсказка?

В официальные документы Livewire есть пример контроллера Pikaday. Я предполагаю, что wire:model не подключен к самому входу, и, возможно, у вас есть wire:ignore на родительском элементе? Насколько мне известно, этот контроллер не выполняет никакого domdiffing, так что директива wire:ignore, вероятно, не нужна.

Qirel 30.03.2021 11:25

Я удалил wire: ignore из date-picker.blade.php, но результат был тот же. Я не вижу существенной разницы между моей реализацией и официальной. Есть ли рабочий пример с полными кодами?

mmrn 31.03.2021 06:55

в макеты убедитесь, что вы включаете livewire CSS и скрипты. У меня были такие же случайные проблемы. Это произошло потому, что мне не хватало тех, которые описаны в моем "главном файле" здесь laravel-livewire.com/docs/2.x/quickstart

Zach Robichaud 06.04.2021 17:00
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Поиск нового уровня в Laravel с помощью MeiliSearch и Scout
Laravel Scout - это популярный пакет, который предоставляет простой и удобный способ добавить полнотекстовый поиск в ваше приложение Laravel. Он...
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
Освоение архитектуры микросервисов с Laravel: Лучшие практики, преимущества и советы для разработчиков
В последние годы архитектура микросервисов приобрела популярность как способ построения масштабируемых и гибких приложений. Laravel , популярный PHP...
Как построить CRUD-приложение в Laravel
Как построить CRUD-приложение в Laravel
Laravel - это популярный PHP-фреймворк, который позволяет быстро и легко создавать веб-приложения. Одной из наиболее распространенных задач в...
0
3
66
0

Другие вопросы по теме