You have in AssignedDriver class the public property $rating, and like is public is shared to the blade. So, if in that blade you include a nested component like @livewire(’…’) and that component in mount method is expecting data binded (like you refer) you need to pass the correct value and syntax. In your case you must do it:
@livewire('assigned-driver', ['averageRating' => $parent_component_public_property])
Now, I saw you make the things a little confuse because you assign this value to another property and after this last (public $rating) is include in render method with the before property name…I mean, make it simple. This is my way
...
public $rating;
public function mount($rating)
{
$this->rating = $rating;
}
public function render()
{
return view('livewire.assigned-driver'); //once $rating is public don't need be put in here
}
and in parent blade component
@livewire('assigned-driver', ['rating' => $parent_component_public_property])