NotRegisteredModal
Модальное окно для показа неавторизованным юзерам с просьбой и возможностью входа
Возможно программное использование
Props
modelValue
- type:
boolean - default:
false
Состояние открытия
Events
| Event name | Properties | Description |
|---|---|---|
| success | registered boolean - статус зарегистрировался пользователь или просто вошел в аккаунт | Событие успешной авторизации |
| result | event { action: 'ok', result: boolean } - event.result статус зарегистрировался пользователь или просто вошел в аккаунт | Более расширенный success, используется в программном апи |
| update:modelValue | modelValue boolean - undefined | Обновление статуса модалки |
Использование
Через пропсы
Использование через пропсы работает через проп modelValue и его обновление
<template>
<NotRegisteredModal
v-model="opened"
title="Some title"
@success="onSuccess"
/>
</template>
import { ref } from 'vue';
import NotRegisteredModal from 'shared-front/lib/components/not-registered-modal';
const opened = ref(false);
const onSuccess = (registered: boolean) => {
};
Через ref
Использование через рефы схоже с пропсами и программным одновременно
От пропсов задание компонента в шаблоне и передача пропов, от программного само открытие
Для отслеживания события success необходимо вешать обработчик, функция open ничего не возвращает
<template>
<NotRegisteredModal
ref="modalRef"
title="Some title"
@success="onSuccess"
/>
</template>
import { ref } from 'vue';
import NotRegisteredModal from 'shared-front/lib/components/not-registered-modal';
const modalRef = ref(null);
const onSuccess = (registered: boolean) => {
};
const open = () => {
modalRef.value?.open();
};
Через API
Программное апи работает на основе $modal
import { openNotRegisteredModal } from 'shared-front/lib/components/not-registered-modal';
const open = async () => {
const res = await openNotRegisteredModal();
};
Необходим инстанс SfModalsContainer