Используя Laravel Livewire, у меня есть родительский элемент и (повторяющийся) дочерний элемент. Дочерний блейд вызывает вызов childMethod() через провод:click="childMethod()".
Проблема в том, что родительский->childMethod() вызывается, когда я хотел, чтобы был вызван child->childMethod().
Родительский компонент
class StatementsTable extends Component // parent
{
public function render()
{
return view('livewire.statements-table', [
'statements' => Statement::limit(10)->get()
]);
}
}
Родительские операторы-table.blade
@foreach($statements as $statement)
@livewire('statement-line', ['statement' => $statement], key($statement->id))
@endforeach
Дочерний компонент:
class StatementLine extends Component
{
public $statement;
public $calls = 0;
public function childMethod()
{
$this->calls += 1;
}
public function mount($statement): void
{
$this->statement = $statement;
}
public function render()
{
return view('livewire.statement-line');
}
}
Дочерний оператор-line.blade
{{-- dd(get_defined_vars()) --}}
{{$statement->name}}
{{$statement->date}}
{{$calls}}
Plus
Почему я получаю
Livewire\Exceptions\MethodNotFoundException
Unable to call component method. Public method [childMethod] not found on component: [statements-table]
Подробнее здесь: https://stackoverflow.com/questions/643 ... name-not-f
Livewire: невозможно вызвать метод компонента. Открытый метод [childMethodName] не найден в компоненте: [родительский] ⇐ Php
Кемеровские программисты php общаются здесь
1715719098
Anonymous
Используя Laravel Livewire, у меня есть родительский элемент и (повторяющийся) дочерний элемент. Дочерний блейд вызывает вызов childMethod() через провод:click="childMethod()".
Проблема в том, что родительский->childMethod() вызывается, когда я хотел, чтобы был вызван child->childMethod().
Родительский компонент
class StatementsTable extends Component // parent
{
public function render()
{
return view('livewire.statements-table', [
'statements' => Statement::limit(10)->get()
]);
}
}
Родительские операторы-table.blade
@foreach($statements as $statement)
@livewire('statement-line', ['statement' => $statement], key($statement->id))
@endforeach
Дочерний компонент:
class StatementLine extends Component
{
public $statement;
public $calls = 0;
public function childMethod()
{
$this->calls += 1;
}
public function mount($statement): void
{
$this->statement = $statement;
}
public function render()
{
return view('livewire.statement-line');
}
}
Дочерний оператор-line.blade
{{-- dd(get_defined_vars()) --}}
{{$statement->name}}
{{$statement->date}}
{{$calls}}
Plus
Почему я получаю
Livewire\Exceptions\MethodNotFoundException
Unable to call component method. Public method [childMethod] not found on component: [statements-table]
Подробнее здесь: [url]https://stackoverflow.com/questions/64371335/livewire-unable-to-call-component-method-public-method-childmethodname-not-f[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия