Я хотел бы использовать классы JavaScript с одним классом на файл. Это часть более крупного проекта с использованием eslint. Я начал с:
/*global CSReport*/
/*global CSManager*/
class CSMain {
constructor() {
this.report = new CSReport();
this.manager = new CSManager(this.report);
}
launchReport(...
}
Однако, eslint генерирует ошибку, говоря, что CSMain определен, но никогда не используется. Это привело к идее использовать экспорт и импорт, который казался лучше, чем сделать все глобальным (примечание: CS перед main - это старый метод, позволяющий избежать глобальных конфликтов)
Вопрос в том, как это собрать. Версия выпуска будет представлять собой один (не уточненный) файл, поэтому имена файлов классов больше не будут существовать, когда все они будут объединены в (скажем) csCompiled.js.
Вопросы:
- При импорте используется имя файла. Должен ли я использовать имя CSCompiled.js вместо имен файлов перед объединением?
- Хочу ли я отдельный модуль или модуль для каждого класса?
- Нужно ли экспортировать каждый класс и импортировать каждый используемый им класс?
- Я не до конца уверен, как angular обращается к этому коду, но думаю импортировать csMain.
Я пытался найти ответ на этот вопрос, но я нахожу только старые посты, в которых не используется ecmascript 6 и классы. Если ответ на этот вопрос существует, я не уверен, как к нему добраться.
Справочная информация:
Основной проект использует угловой 1. Этот код является отдельным по старым причинам. В настоящее время он написан на java с использованием gwt, но мы хотим перейти на javascript, чтобы убрать зависимость от gwt. Всего нужно конвертировать около 30-40 файлов (классов).
Код получает и обрабатывает данные с сервера для запросов отчетов. Предварительная обработка выполняется до того, как она будет передана остальному интерфейсу.
Я использовал javascript для установленного проекта с использованием angular, но мне не хватает опыта создания новых проектов.
Я пытаюсь использовать базовый javascript для этого, поэтому он не будет нуждаться в обновлении, если (например) мы перейдем от углового 1 к текущим версиям. Я пока не знаю, является ли это хорошим способом сделать это.