我在Laravel和PHP方面没有太多的经验,所以这个问题可能让你觉得幼稚。但我很抱歉,我真的被困在这里了。
我能够触发函数'showThis()'
通过
protected $listeners = array('customer-list' => 'showThis', 'payments-dash' => 'showThat');
但是我需要用如下参数触发函数'showThis($x)'
protected $listeners = array('customer-list' => 'showThis(cl)', 'payments-dash' => 'showThis(pd)');
但我遇到了一个错误:无法调用组件方法。在组件:[主体]上找不到公共方法[showThis(cl)]
请帮我做这个。实际上,我正在尝试实现一个带有侧边栏的仪表板。侧边栏提供了通过livewire发送emitTo()并触发函数以呈现相关部分的选项。
就像这样坚持你的第一个方法
protected $listeners = array('customer-list' => 'showThis', 'payments-dash' => 'showThat');
但是对于函数显示,添加一个参数,
public function showThis($someArgPassedHere) {/* code that can use passed parameter */}
当然,只需像通常一样在emit中传递参数
$emit('customer-list', 12)
或者如果您有更多参数,您可以传递名称=
$emit('customer-list', ['id' => 12, 'name' => 'someone'])