Упрощенно, я создал плагин / синглтон следующим образом:
function Auth() {
this.isLoggedIn = false;
this.login = function() {
var self = this;
Axios.post('/login').then(function (response) {
self.isLoggedIn = true;
});
}
}
function install(Vue) {
Object.defineProperties(Vue.prototype, {
$auth: {
get: function() {
return new Auth();
}
}
});
}
export default install;
Регистрация плагина:
import Auth from './Auth';
Vue.use(Auth);
Теперь я хотел бы, чтобы мой интерфейс реагировал на свойство isLoggedIn, как таковой:
<div v-if="$auth.isLoggedIn">
Logged in
</div>
Однако это не работает. Начальное значение isLoggedIn читается, как и ожидалось, но нет непрерывной привязки на месте. Что еще мне нужно сделать?