Я рассматриваю пример документации SweetAlert2, которая генерирует окно с шагами и включает кнопку go назад.
Я не могу найти способ настроить различные очереди так, как мне хочется. Согласно документации, его можно настроить с помощью .queue (), но он у меня не работает.
Кто-нибудь знает, как это сделать?
const steps = ['1', '2', '3']
const swalQueueStep = Swal.mixin({
confirmButtonText: 'Forward',
cancelButtonText: 'Back',
progressSteps: steps,
input: 'text',
inputAttributes: {
required: true
},
reverseButtons: true,
validationMessage: 'This field is required'
})
async function backAndForth () {
const values = []
let currentStep
for (currentStep = 0; currentStep < steps.length;) {
const result = await swalQueueStep.fire({
title: 'Question ' + steps[currentStep],
inputValue: values[currentStep],
showCancelButton: currentStep > 0,
currentProgressStep: currentStep
})
if (result.value) {
values[currentStep] = result.value
currentStep++
} else if (result.dismiss === 'cancel') {
currentStep--
} else {
break
}
}
if (currentStep === steps.length) {
Swal.fire(JSON.stringify(values))
}
}
backAndForth()
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@9"></script>