Содержимое вкладки формы Laravel Filament v3 теряетсяPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Содержимое вкладки формы Laravel Filament v3 теряется

Сообщение Anonymous »

У меня возникла проблема с конструктором форм. Моя форма состоит из нескольких вкладок, на которых различные вкладки и/или элементы формы отображаются/скрываются в зависимости от данных живой формы. Я заметил, что содержимое последней вкладки смещается в зависимости от состояния ввода формы.
Хотя первоначальная проблема, с которой я столкнулся, была в реальном проекте, где у нас довольно сложная форма, у меня есть удалось воспроизвести его по упрощенной форме образца. Я не уверен, является ли это ошибкой Filament, ошибкой Livewire или просто ошибкой пользователя. Надеюсь, вы поделитесь своими мыслями.
Я создал новый репозиторий https://github.com/mariusaustr/filamentphp-tabs-bug, куда вы можете его клонировать, следуйте инструкциям в readme.md чтобы настроить проект, просмотрите скриншоты с более неожиданным поведением и воспроизведите ошибку (?). Поскольку ошибка может быть воспроизведена в новом репозитории, я думаю, что о кеш-зависимости или устаревших зависимостях не может быть и речи.
Проблема:
Когда вы проверяете 2 live()< /code> флажки на вкладке «Подробности», элемент формы из последней вкладки отображается внизу каждой вкладки.
Когда вы снимаете флажки с этих двух флажков live() — форма последней вкладки компонент пропадает
Если вы удалите любую из этих 4 вкладок, проблема исчезнет.
Определение формы:
https://github .com/mariusaustr/filamentphp-tabs-bug/blob/main/app/Filament/Resources/UserResource.php

Код: Выделить всё

public static function form(Form $form): Form
{
$categories = [
'Category1',
'Category2',
'Category3',
];

$modelData = [];
foreach ($categories as $category) {
$modelData[$category] = [
'available' => false,
'option_1' => false,
'option_2' => false,
];
}

return $form
->schema([
Tabs::make('Tabs')
->columnSpanFull()
->tabs([

Tab::make('Control')
->schema(
collect($modelData)
->mapWithKeys(fn (array $data, string $category) => [
$category => Fieldset::make($category)
->columns(3)
->schema(
(new Collection($data))
->mapWithKeys(function ($value, $key) use ($category) {
return [
$key => Forms\Components\Checkbox::make("categories.{$category}.{$key}")
->hidden(fn (Get $get): bool => $key !== 'available' && ! $get("categories.{$category}.available"))
->default($value)
->live(condition: in_array($key, ['available', 'option_2']))
];
})
->toArray()
),
])
->toArray()
),

Tab::make('Hidden Dummy Tab 1')
->hidden(fn (Get $get): bool => (new Collection($get('categories')))
->filter(fn (array $data) => $data['available'])
->filter(fn (array $data) => $data['option_2'])
->isEmpty()
)
->schema([
Fieldset::make('Dummy fields of conditionally hidden tab')
->schema([
Forms\Components\TextInput::make('www.up'),
]),
]),

Tab::make('Empty Dummy Tab 3')
->schema([
Fieldset::make('Hidden Dummy fields')
->hidden(fn (Get $get): bool => (new Collection($get('categories')))
->filter(fn (array $data) => $data['available'])
->filter(fn (array $data) =>  $data['option_2'])
->isEmpty()
)
->schema([
Forms\Components\TextInput::make('abc.def'),
]),
]),

Tab::make('Dummy Tab 4')
->schema([
Fieldset::make('Dummy fieldset from last tab')
->schema([
Forms\Components\Checkbox::make('todo.check'),
]),
]),
]),
]);
}
Более подробную информацию можно найти на https://github.com/mariusaustr/filamentphp-tabs-bug.
Я что-то делаю неправильно? Или это ошибка нити накала/провода под напряжением?
Будем очень признательны за любые идеи.

Подробнее здесь: https://stackoverflow.com/questions/788 ... -misplaced
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Метод filament v3 Filament\Actions\CreateAction::table не существует
    Anonymous » » в форуме Php
    0 Ответы
    37 Просмотры
    Последнее сообщение Anonymous
  • Проверка теряется при смене вкладки [дубликат]
    Anonymous » » в форуме C#
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Отображение данных формы с динамическими типами полей с использованием повторителя форм Filament в Laravel
    Anonymous » » в форуме Php
    0 Ответы
    27 Просмотры
    Последнее сообщение Anonymous
  • Вкладки Bootstrap – изменение вкладки при нажатии кнопки «Назад»
    Anonymous » » в форуме Jquery
    0 Ответы
    180 Просмотры
    Последнее сообщение Anonymous
  • Как получить текст для каждой вкладки и индекс выбранной вкладки из метода PaintTab() BasicTabbedPaneUI?
    Anonymous » » в форуме JAVA
    0 Ответы
    25 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Php»