Skip to content

User

User — класс для работы с текущим пользователем в установленном мини‑приложении: проверка прав и ролей, доступ к его настройкам (UserOptions) и другим связанным данным. Singleton экземпляр доступен после инициализации Frame.

ts
import { User } from '@aspro-cloud/miniapp-jssdk'

Свойства

options

Экземпляр UserOptions для работы с настройками текущего пользователя

ts
get options(): UserOptions

Методы

getInstance

Возвращает текущий singleton экземпляр User. Вызывать только после инициализации Frame

ts
static getInstance(): User

destroy

Удаляет подписки и освобождает ресурсы

ts
destroy(): void

hasRole

Проверяет, есть ли у текущего пользователя хотя бы одна из указанных ролей в установленном мини‑приложении

ts
async hasRole(role: UserRole | UserRole[]): Promise<boolean>
ПараметрТипОписание
roleUserRole | UserRole[]Одна роль или массив ролей для проверки ('admin', 'employee', 'none')

isAdmin

Возвращает true, если текущий пользователь является администратором портала

ts
async isAdmin(): Promise<boolean>

Пример

ts
import { App, User } from '@aspro-cloud/miniapp-jssdk'

await App.initializeFrame()

const user = User.getInstance()

// проверка, является ли текущий пользователь администратором портала
if (await user.isAdmin()) {
  console.log('Пользователь — администратор портала')
}

// проверка роли у текущего пользователя
if (await user.hasRole('admin')) {
  console.log('Текущий пользователь имеет роль администратора в приложении')
}
js
const App = window.ACloudMiniApp;

const frame = await App.initializeFrame();

// проверка, является ли текущий пользователь администратором портала
if (await frame.user.isAdmin()) {
  console.log('Пользователь — администратор портала');
}

// проверка роли у текущего пользователя
if (await frame.user.hasRole('admin')) {
  console.log('Текущий пользователь имеет роль администратора в приложении');
}

Опубликовано под лицензией MIT.