Метод getCurrentStep является одним из ключевых
инструментов управления текущим состоянием тура в библиотеке
Shepherd.js. Он позволяет получить ссылку на активный
шаг (step) в любой момент выполнения, что делает возможным динамическое
взаимодействие с пользователем и условное управление навигацией по
туру.
const currentStep = tour.getCurrentStep();
new Shepherd.Tour(options).undefined, если тур не запущен или завершен.const tour = new Shepherd.Tour({ defaultStepOptions: { cancelIcon: { enabled: true } } });
tour.addStep({
id: 'intro',
text: 'Добро пожаловать!',
buttons: [
{ text: 'Далее', action: tour.next }
]
});
tour.start();
const step = tour.getCurrentStep();
console.log(step.id); // 'intro'
show или hide, а также изменять текст
и другие параметры.const currentStep = tour.getCurrentStep();
currentStep.updateStepOptions({
text: 'Обновленный текст шага',
buttons: [
{ text: 'Назад', action: tour.back },
{ text: 'Далее', action: tour.next }
]
});
const step = tour.getCurrentStep();
if (step.id === 'settings') {
// Выполнить дополнительные действия
console.log('Пользователь находится на шаге настроек');
}
undefined.
Необходимо учитывать это при добавлении логики, зависящей от текущего
шага.if (tour.getCurrentStep()) {
console.log('Тур запущен');
} else {
console.log('Тур неактивен');
}
Сравнение с другими методами Метод
getCurrentStep отличается от next() и
back() тем, что не изменяет состояние тура, а лишь
возвращает ссылку на активный шаг. Это делает его безопасным для
проверки состояния без побочных эффектов.
Комбинация с событиями Часто используется вместе
с событиями show и hide для получения
актуального шага в момент его отображения:
tour.on('show', () => {
const step = tour.getCurrentStep();
console.log(`Показан шаг: ${step.id}`);
});
if (tour.getCurrentStep().id === 'intro') {
tour.addStep({
id: 'extra',
text: 'Дополнительный шаг',
buttons: [{ text: 'Далее', action: tour.next }]
});
}
Step (например, next(), back(),
updateStepOptions()).undefined перед обращением к свойствам шага, чтобы избежать
ошибок.Метод getCurrentStep является инструментом для
детального контроля над туром и обеспечивает возможность
динамической адаптации шагов, позволяя создавать
интерактивные и гибкие пользовательские маршруты в приложениях на
JavaScript с использованием Shepherd.js.