我在新用户注册时尝试pushnotification
。当我在events
上发起事件MemberNotificationEvents
时,我创建了名为event(new MemberNotificationEvent($UserDetails));
的{{1}} }流完全开始,但在signUpController
一个MemberNotificationListener
返回错误:
在字符串
上调用成员函数send()
我输入了public function handle(MemberNotificationEvent $event)
的完整代码:
MemberNotificationListener
我的代码中有什么问题?
答案 0 :(得分:2)
问题在于这一行:
$this->pushNotificationService = PushNotificationService::class;
执行SomeClass::class
时,表示您提供的是班级名称 - 而不是实际班级。
因此,当您稍后执行$this->pushNotificationService->send(...)
时,推送通知服务只是类名而不是服务类。
问题的第二部分是你需要一个实际的对象。 Laravel可以在构造函数中为您注入,然后您可以提供它。像这样:
public function __construct(PushNotificationService $service)
{
$this->pushNotificationService = $service;
}