fix: resolve error when similar texts exist
This commit is contained in:
@@ -31,6 +31,7 @@
|
||||
- Редактирование текста прямо в списке
|
||||
- Удаление текста кнопкой "×"
|
||||
- Автоматическое обновление панелей при изменении текстов
|
||||
- Автоматическая фильтрация пустых текстов и дубликатов
|
||||
|
||||
#### 5. Просмотр панелей
|
||||
- Единое фоновое изображение в боковой панели (один раз вверху)
|
||||
@@ -61,11 +62,11 @@
|
||||
### Шаг 3: Создание и редактирование текстов
|
||||
1. Пользователь вводит текст для первой панели (например: "links")
|
||||
2. Нажимает кнопку "Добавить"
|
||||
3. Текст добавляется в список текстов
|
||||
3. Текст добавляется в список текстов (пустые тексты и дубликаты автоматически фильтруются)
|
||||
4. В боковой панели автоматически отображается превью созданной панели
|
||||
5. Пользователь повторяет процесс для других текстов ("about me", "projects", "memes")
|
||||
6. Все тексты отображаются в списке ниже поля ввода
|
||||
7. Каждый текст в списке можно редактировать прямо в поле ввода
|
||||
7. Каждый текст в списке можно редактировать прямо в поле ввода (дубликаты автоматически фильтруются)
|
||||
8. Любой текст можно удалить кнопкой "×"
|
||||
9. При редактировании или удалении текста автоматически обновляется соответствующая панель
|
||||
|
||||
|
||||
@@ -63,11 +63,19 @@
|
||||
}
|
||||
|
||||
function handleAddText(text: string) {
|
||||
// Проверяем, что текст не пустой и не дублируется
|
||||
if (!text.trim()) return;
|
||||
if (texts.some(t => t.text === text)) return;
|
||||
|
||||
texts = [...texts, { id: crypto.randomUUID(), text }];
|
||||
updatePanelsFromTexts();
|
||||
}
|
||||
|
||||
function handleUpdateText(id: string, newText: string) {
|
||||
// Проверяем, что текст не пустой и не дублируется
|
||||
if (!newText.trim()) return;
|
||||
if (texts.some(t => t.id !== id && t.text === newText)) return;
|
||||
|
||||
texts = texts.map(t => t.id === id ? { ...t, text: newText } : t);
|
||||
updatePanelsFromTexts();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user