Я пытаюсь создать динамический компонент Laravel Blade, который может отображать различные HTML-теги, используя свойство tag. Я использую базовый компонент и компонент кнопки. Однако когда я визуализирую компонент кнопки, он выводит неверный тег в HTML вместо желаемого тега.
Вот моя настройка:
button component:
@props([
'type' => 'button', // The type of button (e.g., button, submit, reset)
'name' => '', // The name attribute for the button (useful in forms)
'value' => '', // The value attribute for the button (useful in forms)
'disabled' => false, // Boolean to disable the button (adds the disabled attribute)
'onclick' => '', // JavaScript code to execute on click
])
merge(['class' => 'btn vn-button']) }}
type="{{ $type }}"
@if($name) name="{{ $name }}" @endif
@if($value) value="{{ $value }}" @endif
@if($disabled) disabled @endif
@if($onclick) onclick="{{ $onclick }}" @endif
>
{{ $slot ?? 'Button' }}
base-component:
@props([
'tag' => 'div', // The HTML tag to use, default is .
'id' => '', // The ID attribute, for CSS or JavaScript targeting.
'class' => '', // Additional CSS classes.
'style' => '', // Inline styles.
'title' => '', // Tooltip or additional information.
'dataSelectors' => [], // Array of custom data-* attributes.
'ariaLabel' => '', // ARIA label for accessibility.
'role' => '', // Semantic ARIA role.
'hidden' => false, // Boolean to add the hidden attribute.
])
$value)
data-{{ $key }}="{{ $value }}"
@endforeach
>
{{ $slot }}
Использование в файле Blade:
Test
Ожидаемый результат:
Test
Текущий результат:
....
Как я могу заставить базовый компонент правильно отображать значение динамического тега как желаемый тег HTML (например, вместо )? Существует ли известное ограничение или лучший подход для обработки динамических тегов в компонентах Laravel Blade?
Обновление:
Я ПОПЫТАЛ ИСПОЛЬЗОВАТЬ X-DYNMIC -COMPONENT, но результат тот же... Я думаю, что это как-то связано с тем, что это вложенный компонент по сути
@props([
'tag' => 'div', // The HTML tag to use, default is .
'id' => '', // The ID attribute, for CSS or JavaScript targeting.
'class' => '', // Additional CSS classes.
'style' => '', // Inline styles.
'title' => '', // Tooltip or additional information.
'dataSelectors' => [], // Array of custom data-* attributes.
'ariaLabel' => '', // ARIA label for accessibility.
'role' => '', // Semantic ARIA role.
'hidden' => false, // Boolean to add the hidden attribute.
])
$value)
data-{{ $key }}="{{ $value }}"
@endforeach
>
{{ $slot }}
Подробнее здесь: https://stackoverflow.com/questions/793 ... t-html-tag
Laravel Blade: компонент x-base не отображает правильный HTML-тег ⇐ Php
Кемеровские программисты php общаются здесь
-
Anonymous
1735171573
Anonymous
Я пытаюсь создать динамический компонент Laravel Blade, который может отображать различные HTML-теги, используя свойство tag. Я использую базовый компонент и компонент кнопки. Однако когда я визуализирую компонент кнопки, он выводит неверный тег в HTML вместо желаемого тега.
Вот моя настройка:
button component:
@props([
'type' => 'button', // The type of button (e.g., button, submit, reset)
'name' => '', // The name attribute for the button (useful in forms)
'value' => '', // The value attribute for the button (useful in forms)
'disabled' => false, // Boolean to disable the button (adds the disabled attribute)
'onclick' => '', // JavaScript code to execute on click
])
merge(['class' => 'btn vn-button']) }}
type="{{ $type }}"
@if($name) name="{{ $name }}" @endif
@if($value) value="{{ $value }}" @endif
@if($disabled) disabled @endif
@if($onclick) onclick="{{ $onclick }}" @endif
>
{{ $slot ?? 'Button' }}
base-component:
@props([
'tag' => 'div', // The HTML tag to use, default is .
'id' => '', // The ID attribute, for CSS or JavaScript targeting.
'class' => '', // Additional CSS classes.
'style' => '', // Inline styles.
'title' => '', // Tooltip or additional information.
'dataSelectors' => [], // Array of custom data-* attributes.
'ariaLabel' => '', // ARIA label for accessibility.
'role' => '', // Semantic ARIA role.
'hidden' => false, // Boolean to add the hidden attribute.
])
$value)
data-{{ $key }}="{{ $value }}"
@endforeach
>
{{ $slot }}
Использование в файле Blade:
Test
Ожидаемый результат:
Test
Текущий результат:
....
Как я могу заставить базовый компонент правильно отображать значение динамического тега как желаемый тег HTML (например, вместо )? Существует ли известное ограничение или лучший подход для обработки динамических тегов в компонентах Laravel Blade?
[b]Обновление:[/b]
Я ПОПЫТАЛ ИСПОЛЬЗОВАТЬ X-DYNMIC -COMPONENT, но результат тот же... Я думаю, что это как-то связано с тем, что это [b]вложенный компонент[/b] по сути
@props([
'tag' => 'div', // The HTML tag to use, default is .
'id' => '', // The ID attribute, for CSS or JavaScript targeting.
'class' => '', // Additional CSS classes.
'style' => '', // Inline styles.
'title' => '', // Tooltip or additional information.
'dataSelectors' => [], // Array of custom data-* attributes.
'ariaLabel' => '', // ARIA label for accessibility.
'role' => '', // Semantic ARIA role.
'hidden' => false, // Boolean to add the hidden attribute.
])
$value)
data-{{ $key }}="{{ $value }}"
@endforeach
>
{{ $slot }}
Подробнее здесь: [url]https://stackoverflow.com/questions/79308450/laravel-blade-x-base-component-not-rendering-correct-html-tag[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия