php – Por que no pasa mi variable a la vista blade?


Por que no pasa la variable usuario a la vista del componente?

este es mi componente:

<?php

namespace AppHttpLivewire;

use LivewireComponent;
use IlluminateSupportFacadesDB;
use IlluminateSupportFacadesAuth;
use AppUser;


class PerfilComponent extends Component
{
    public $id, $nombre, $correo, $password;

    public function mount(){
      $id = Auth::id();
    }

    public function render()
    {
        $usuario = User::where('id','=',$id)->get();
        return view('livewire.Perfiles.perfil-component',compact('usuario'));
    }


}

Coloque esto en el route/web

Route::view('/perfil', 'livewire/Perfiles/perfil-component');

y esta es la vista de mi componente:

@extends('layouts.app')
@section('content')
<div>
  @foreach($usuario as $usu)
    {{$usu->name}}
  @endforeach
</div>
@endsection

cuando me voy a localhot:8000/perfil me aparece el siguiente error:

ErrorException
Undefined variable: usuario (View: /../resources/views/livewire/Perfiles/perfil-component.blade.php)

he revisado proyectos anteriores con livewire y no me pasaba esto. qué podrá ser?