@it-enterprise/web-app-runtime
v3.0.8
Published
web-app-runtime
Downloads
57
Keywords
Readme
web-app-runtime
Project setup
npm install
Compiles and minifies for production
npm run build
Using plugin
import Vue from 'vue'
import store from '@/store'
import model from '@/app-model'
import appRunner from '@it-enterprise/web-app-runtime'
import auth from '@it-enterprise/jwtauthentication'
import router from '@/router'
Vue.use(appRunner, {
store, // ref to vuex store
auth, // ref to authentication core
router, // ref to vue router
model // ref to application model
})
// attach event listeners to auth event bus
Vue.$authEventBus.onBeforeSignIn(() => {
store.commit('CLEAR_ERROR')
})
Vue.$authEventBus.onAfterSignIn(() => {
})
Vue.$authEventBus.onSignInError((message) => {
store.commit('SET_ERROR', message)
})
Vue.$authEventBus.onStartProcessing(() => {
store.commit('SET_PROCESSING', true)
})
Vue.$authEventBus.onEndProcessing(() => {
store.commit('SET_PROCESSING', false)
})
Vue.$authEventBus.onUpdateUserData(() => {
store.dispatch('SET_ADDITIONAL_DATA')
Vue.$authCore.SetUserRole('User')
})
Installed Vue global properties
Vue.$authCore
|Name|Member type |Description|
|------|-----|-----------|
|isAuthenticated
| property | true
Пользователь авторизовался false
Анонимный пользователь |
|userRole
| property | Роль пользователя в приложении |
|userLogin
| property | Логин пользователя |
|SignIn
| method | Аутентифицироваться Агрументы: params: { email:string, password:string, keepSigned:boolean }
|
|SignOut
| method | Выход из системы |
|SetUserRole
| method | Установить роль пользователя Аргументы: userRole:string
|
Vue.$routerCore
|Name|Member type |Description|
|------|-----|-----------|
|UserRole
| property | Роль текущего пользователя (в том числе анонимного) |
|GetSignInPage
| method | Получить страницу аутентификации |
|HaveAccessToPage
| method | Проверка наличия доступа к странице Аргументы: page:AppPage
|
|GetHomePage
| method | Получить домашнюю страницу (с учетом домашних страниц согласно ролей) |
|GoToSignIn
| method |Перейти на страницу аутентификации |
|GoToHomePage
| method |Перейти на домашнюю страницу (с учетом роли пользователя) |
|SetAdditionalUserDataHandler
| method |Привязать функцию получения дополнительных данных о пользователе. Вызывается после аутентификации |
Шина событий аутентификации Vue.$authEventBus
Описание методов привязки к событиям:
|Name|Description|
|------|--|
|onBeforeSignIn
| Срабатывает непосредственно перед аутентификацией |
|onAfterSignIn
| Срабатывает непосредственно после успешной аутентификации |
|onSignOut
| Срабатывает непосредственно после выхода пользователя из системы |
|onSignInError
| Срабатывает при ошибке входа. Передаёт в обработчик текст ошибки |
|onStartProcessing
| Срабатывает при старте любого обращения к API |
|onEndProcessing
| Срабатывает при завершении обращения к API |
|onUpdateUserData
| Срабатывает при получении данных о пользователе |