Краткий ответ
Вы можете получить доступ к классу Account
в другом файле с помощью , используя его пространство имен .
namespace InvWebOps.EFModels.TypewriterTSTFiles {
const account = new Account();
}
// the deprecated `module` keyword also works
module InvWebOps.EFModels.TypewriterTSTFiles {
const account = new Account();
}
// a fully qualified name also works
const account = new InvWebOps.EFModels.TypewriterTSTFiles.Account();
Подробнее
Что я делаю не так?
Ключевое слово module
устарело в пользу namespace
.Оба ключевых слова означают одно и то же, но второе не так запутанно.Официальные документы TypeScript говорят это о пространствах имен:
Пространства имен - это просто имена объектов JavaScript в глобальном пространстве имен.Это делает пространства имен очень простой в использовании конструкцией.Они могут занимать несколько файлов ... [и] ... может быть хорошим способом структурировать ваш код в веб-приложении ...
Сгенерированный код Account
делает две вещи:
- Добавляет пространство имен
InvWebOps.EFModels.TypewriterTSTFiles
в глобальную область. - Экспортирует класс
Account
из этого пространства имен.
Все, что экспортируется изпространство имен доступно только из этого пространства имен.Таким образом, всякий раз, когда строка кода должна обращаться к классу Account
, строка кода должна использовать пространство имен класса Account
.Краткий ответ показывает три способа сделать это.