Skip to content

Swal

Swal — UI компонент для отображения диалогов alert, confirm и prompt

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

Конструктор

Создает экземпляр Swal с переданными параметрами

ts
constructor(params: SwalParams)
ПараметрТипОписание
paramsSwalParamsПараметры создания диалога

Свойства

events

Объект типа EventCallbacks<SwalEventName> с обработчиками событий

ts
get events(): EventCallbacks
set events(value: EventCallbacks)

message

Текст сообщения диалога

ts
message: string

title

Заголовок диалога

ts
title: string

view

Вид диалога типа SwalView

ts
get view(): SwalView
set view(value: SwalView)

Методы

alert

Показывает alert диалог

ts
async alert(): Promise<any>

События метода alert():

СобытиеПараметрТипОписание
'onShow'Диалог отображен
'onHide'Диалог скрыт
'onConfirm'Пользователь подтвердил действие

confirm

Показывает диалог с подтверждением действия

ts
async confirm(): Promise<any>

События метода confirm():

СобытиеПараметрТипОписание
'onShow'Диалог отображен
'onHide'Диалог скрыт
'onCancel'Пользователь отменил действие
'onConfirm'Пользователь подтвердил действие

destroy

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

ts
destroy(): void

prompt

Показывает диалог с полем ввода/выбором варианта из списка

ts
async prompt(params?: SwalPromptParams): Promise<any>
ПараметрТипОписание
paramsSwalPromptParamsПараметры поля ввода

События метода prompt():

СобытиеПараметрТипОписание
'onShow'Диалог отображен
'onHide'Диалог скрыт
'onCancel'Пользователь отменил действие
'onPrompt'Пользователь ввел значение
valuestringВведенное значение / Выбранное значение варианта списка params.options

Пример

Вывод информационного сообщения:

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

await App.initializeFrame()

const swal = new Swal({
  view: 'info',
  title: 'Информационное сообщение',
  message: 'Это просто информационное сообщение',
  events: {
    onShow: () => console.log('Сообщение отображено'),
    onHide: () => console.log('Сообщение скрыто'),
    onCancel: () => console.log('Отклонено пользователем'),
  }
})

swal.alert();
js
const App = window.ACloudMiniApp;

await App.initializeFrame();

const swal = new App.Frame.Swal({
  view: 'info',
  title: 'Информационное сообщение',
  message: 'Это просто информационное сообщение',
  events: {
    onShow: () => console.log('Сообщение отображено'),
    onHide: () => console.log('Сообщение скрыто'),
    onCancel: () => console.log('Отклонено пользователем'),
  }
});

swal.alert();

Вывод диалога с подтверждением действия:

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

await App.initializeFrame()

const swal = new Swal({
  view: 'warning',
  title: 'Подтвердите действие',
  message: 'Удалить контрагента',
  events: {
    onShow: () => console.log('Диалог отображен'),
    onHide: () => console.log('Диалог скрыт'),
    onCancel: () => console.log('Отклонено пользователем'),
    onConfirm: () => console.log('Принято пользователем')
  }
})

await swal.confirm()
js
const App = window.ACloudMiniApp;

await App.initializeFrame();

const swal = new App.Frame.Swal({
  view: 'warning',
  title: 'Подтвердите действие',
  message: 'Удалить контрагента',
  events: {
    onShow: () => console.log('Диалог отображен'),
    onHide: () => console.log('Диалог скрыт'),
    onCancel: () => console.log('Отклонено пользователем'),
    onConfirm: () => console.log('Принято пользователем')
  }
});

await swal.confirm();

Вывод диалога с полем ввода:

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

await App.initializeFrame()

let swal = new Swal({
  view: 'warning',
  title: 'Укажите количество',
  message: 'Пожалуйста, введите количество:',
  events: {
    onShow: () => console.log('Диалог отображен'),
    onHide: () => console.log('Диалог скрыт'),
    onCancel: () => console.log('Отклонено пользователем'),
    onPrompt: (value) => console.log(`Введено значение: ${value}`)
  }
})

await swal.prompt({
  type: 'input',
  placeholder: 'Введите значение',
})
js
const App = window.ACloudMiniApp;

await App.initializeFrame();

let swal = new App.Frame.Swal({
  view: 'warning',
  title: 'Укажите количество',
  message: 'Пожалуйста, введите количество:',
  events: {
    onShow: () => console.log('Диалог отображен'),
    onHide: () => console.log('Диалог скрыт'),
    onCancel: () => console.log('Отклонено пользователем'),
    onPrompt: (value) => console.log(`Введено значение: ${value}`)
  }
});

await swal.prompt({
  type: 'input',
  placeholder: 'Введите значение',
});

Вывод диалога с текстовым полем ввода:

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

await App.initializeFrame()

let swal = new Swal({
  view: 'warning',
  title: 'Укажите причину',
  message: 'Пожалуйста, укажите причину:',
  events: {
    onShow: () => console.log('Диалог отображен'),
    onHide: () => console.log('Диалог скрыт'),
    onCancel: () => console.log('Отклонено пользователем'),
    onPrompt: (value) => console.log(`Введено значение: ${value}`)
  }
})

await swal.prompt({
  type: 'textarea',
  placeholder: 'Введите значение',
})
js
const App = window.ACloudMiniApp;

await App.initializeFrame();

let swal = new App.Frame.Swal({
  view: 'warning',
  title: 'Укажите причину',
  message: 'Пожалуйста, укажите причину:',
  events: {
    onShow: () => console.log('Диалог отображен'),
    onHide: () => console.log('Диалог скрыт'),
    onCancel: () => console.log('Отклонено пользователем'),
    onPrompt: (value) => console.log(`Введено значение: ${value}`)
  }
});

await swal.prompt({
  type: 'textarea',
  placeholder: 'Введите значение',
});

Вывод диалога с выбором варианта из списка:

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

await App.initializeFrame()

let swal = new Swal({
  view: 'warning',
  title: 'Изменение статуса',
  message: 'Выберите новый статус:',
  events: {
    onShow: () => console.log('Диалог отображен'),
    onHide: () => console.log('Диалог скрыт'),
    onCancel: () => console.log('Отклонено пользователем'),
    onPrompt: (value) => console.log(`Введено значение: ${value}`)
  }
})

await swal.prompt({
  type: 'select',
  options: [
    {value: 'active', title: 'Активен'},
    {value: 'inprocessing', title: 'В обработке'},
    {value: 'done', title: 'Завершен'}
  ],
})
js
const App = window.ACloudMiniApp;

await App.initializeFrame();

let swal = new App.Frame.Swal({
  view: 'warning',
  title: 'Изменение статуса',
  message: 'Выберите новый статус:',
  events: {
    onShow: () => console.log('Диалог отображен'),
    onHide: () => console.log('Диалог скрыт'),
    onCancel: () => console.log('Отклонено пользователем'),
    onPrompt: (value) => console.log(`Введено значение: ${value}`)
  }
});

await swal.prompt({
  type: 'select',
  options: [
    {value: 'active', title: 'Активен'},
    {value: 'inprocessing', title: 'В обработке'},
    {value: 'done', title: 'Завершен'}
  ],
});

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