Я начал работу над крупномасштабным проектом машинописного текста.Использование пространства имен, распространяемого по нескольким файлам в TypeScript
С самого начала я хочу, чтобы мои файлы были организованы (этот проект будет разделен между множеством разработчиков, поэтому заказ очень необходим).
Я пытаюсь использовать модули/пространства имен и разделять классы на отдельные файлы для каждого из них, с папкой, содержащей пространство имен.
Структура файла:
app.ts
\Classes
---- \Animals
---- ---- Mammals.ts
---- ---- Reptiles.ts
Я затем попытаться импортировать все файлы в этом пространстве имен в app.ts используя что-то вроде: import * as Animals from "./Classes/Animals"
Что касается пространства имен самих файлов, я попытался следующий, не имела успеха:
namespace Animals {
export class Mammals {
constructor() {
}
}
}
, а также:
module Animals {
export class Reptiles {
constructor() {
}
}
}
К сожалению, путь никогда не распознается (поскольку он указывает на папку, а не на один файл). Возможно ли это? Наличие всех моих классов из одного пространства имен в одном файле приведет к созданию файлов длиной в тысячи строк и для этого проекта, который не поддерживается.
Я также заметил, что TypeScript 1.5 поддерживает tsconfig.json. Однако при необходимости добавить каждый файл вручную к карте - это верный способ введения проблем, когда разработчики начинают добавлять классы.
ПРИМЕЧАНИЕ. Я использую Visual Studio 2015, TypeScript 1.5 (я уверен, не уверен, как проверить). У меня также включена поддержка ES6.
Спасибо за рекомендации, которые вы можете дать!
Официальный справочник охватывает это (хотя ут могут быть устаревшими) http://www.typescriptlang.org/Handbook#modules-splitting-across-files – pablochan
Благодаря @pablochan - я видел, что один слишком , Ссылка на каждый файл в пространстве имен подобна интуитивному счетчику. Можно ли указывать на пространство имен, а не на отдельные файлы? – Askanison4
Нет, если Visual Studio или какой-либо другой инструмент не поддерживают это. – pablochan