$query = User::query(); $query->when(request('role', false), function ($q, $role) { return $q->where('role_id', $role); }); $authors = $query->get(); 这里写错来,$role要写到 function ($q) use ($role)