У меня в составе приложения js есть такой файл (имена которого изменены для защиты невинных):
export const noValue = '';
export default class ValueProcessor {
...
getValue(valueId) {
}
...
}
И еще один файл, который импортирует эти файлы:
import ValueProcessor, { noValue } from '../processor/value-processor'
class ValueSource {
...
handleValue(valueId) {
const loadedVal = this.getValue(valueId)
if (noValue === loadedVal) {
// signal that there is no value
}
}
}
В проверке, использующей noValue, выдается «ReferenceError: noValue не определено».Я использовал это в других проектах, и это работает, и это работает в других местах как для констант, так и для функций.Я не вижу никакой причины, почему это не работает здесь.Есть ли какие-то конкретные вещи, которые я должен искать?
Я видел ES6-модули: импортированные константы сначала не определены;они становятся доступными позже , и это не так.Файл value-processor.js ничего не импортирует, поэтому я нигде не вижу круговой ссылки.Кроме того, экспорт по умолчанию из value-processor.js работает нормально.
=== UPDATE ===
Я не смог найти способ собрать простой пример.На данный момент я использую обходной путь наличия статического геттера в экспортируемом классе.Этот метод получения возвращает const, который отказывается экспортировать.