| TypeScript/JavaScript: ошибка с одинарными кавычками |
|
| Добавил(а) microsin |
|
Долго разбирался с ошибкой TypeScript, которая была связана с неправильными одинарными кавычками. Вот этот код не работал: export const API_BASE = "http://localhost:3000/api"; А вот этот код работал правильно: export const API_BASE = "http://localhost:3000/api"; На первый взгляд различия найти трудно. Это классическая ошибка с шаблонными строками в JavaScript/TypeScript. Почему так произошло? Неправильный вариант (с обычными кавычками): profile: '${API_BASE}/profile' Что здесь происходит: - Обычные кавычки `'` или `"` создают обычную строку. Правильный вариант (с обратными кавычками): profile: `${API_BASE}/profile` Что здесь происходит: - Обратные кавычки `` ` `` создают шаблонную строку (template literal). Демонстрация разницы: const API_BASE = "http://localhost:3000/api"; До исправления: fetch('${API_BASE}/profile') // Попытка загрузить: ${API_BASE}/profile После исправления: fetch('http://localhost:3000/api/profile') // Правильный URL Как запомнить: - Обычные кавычки (`'` или `"`) - для простого текста. Это одна из самых частых ошибок при работе с шаблонными строками в JavaScript и TypeScript. |