проверить статус пользователя в laravel vue - PullRequest
0 голосов
/ 22 сентября 2018

У меня есть промежуточное ПО, где я проверяю статус пользователя, если онлайн или офлайн, и он работает, если я использую blade-сервер, но так как я использую vue.js components, я не знаю, как я могу передать это компоненту.

в клинке я могу использовать:

@if($user->isOnline)
Online
@else
Offline
@endif

это моя user модель:

public function isOnline()
{
  return Cache::has('user-is-online-' . $this->id);
}

теперь мой вопрос Как я могу использовать isOnline в моемкомпоненты?

PS: если вам нужен какой-нибудь код, которым я делюсь, просто дайте мне знать

1 Ответ

0 голосов
/ 22 сентября 2018

Если вы использовали blade-сервер для получения переменной, вы можете получить ее только при загрузке страницы.Если ваше vue не записано в блейд-файле, то ваше vue не может получить переменную в вашем blade-файле.

Я бы посоветовал вам сделать вызов API, используя axios или что-то другое для вашегоLaravel в течение созданного жизненного цикла вашего компонента vue, чтобы получить переменную.

// Vue
axios.get('example.com/api/users').then((res) => {
   this.users = res.data;
}

// Laravel
Route::get('/users', UserController@index);

// Controller
public function index() {
    return User::all()->map(function ($user) {
        $user->isOnline = $user->isOnline();
        return $user;
    });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...