Эта статья является зеркальной статьёй машинного перевода, пожалуйста, нажмите здесь, чтобы перейти к оригиналу.

Вид: 10533|Ответ: 0

[TypeScript] Typescrip{filter}t module

[Скопировать ссылку]
Опубликовано 22.10.2018 17:21:45 | | |
В стандарте ECMAscrip{filtering}t 2015 Javascrip{filtering}t добавляет понятие модулей. Typescrip{filter}t также следует этой концепции.

1. Импорт и экспорт модулей

Модули выполняются в собственном масштабе, а не в глобальном; Это значит, что переменные, функции, классы и т.д., определённые в модуле, не видны вне модуля, если только вы не экспортируете их явно с помощью одного из экспортов. С другой стороны, если вы хотите использовать переменные, функции, классы, интерфейсы и т.д., экспортированные из других модулей, их нужно импортировать, используя один из импортов.

Модули самодекларируются. В Typescrip{filter}t связь между двумя модулями устанавливается с помощью импорта и экспорта на уровне файла. Вот базовый пример:

animal.ts

app.ts

В приведённом выше примере в animal.ts объявлен Animal-like и экспортируется через экспорт. В app.ts укажите относительный путь файла и импортируйте его через импорт для использования класса Животное.

Поскольку у Javascrip{filter}t есть два разных метода ссылки на модули, при компиляции в Javascrip{filter}t можно указать метод скомпилированного модуля с помощью конфигурационного файла Typescrip{filtering}t tsconfig.json

Ниже приведено содержимое файла Javascrip{filter}t, скомпилированного различными способами

commonjs

AMD


2. Переименование импорта и экспорта

Имя внутреннего объекта, который используется по умолчанию при импорте и экспорте модулей. Typescrip{filter}t также поддерживает переименование до и после экспорта. Измените приведённый выше пример

animal.ts

app.ts

При импорте и экспорте модули переименовываются с помощью ключевого слова as.

Стоит отметить, что при переименовании экспортируемого модуля имя перед импортом должно совпадать с имя экспортированного переименованного модуля, иначе компилятор выдаст сообщение об ошибке. Например, если экспортированный модуль переименован в ANI, имя модуля перед ключевым словом as должно быть ANI при импорте этого модуля в другой файл app.ts.

Или, если вы не знаете название импортированного модуля, можно заменить его на знак *

В приведённом выше примере, если переименовать все модули, заменённые знаком *, в animal_module, вы сможете получить доступ ко всему контенту, экспортированному из модуля, через animal_module объект.

3. Экспорт и экспорт нескольких объектов

Обычно в модуле определяется несколько типов объектов, которые затем экспортируются вместе. В импорте также может быть несколько модулей

animal.ts

app.ts

При экспорте вы можете собрать объект типа, который хотите экспортировать, в JSON-объект, а затем экспортировать его. После импорта содержимое можно получить через переименованные объекты модуля.

4. Экспорт по умолчанию

Для модуля может быть только один экспорт по умолчанию

animal.ts

app.ts

В приведённом выше примере класс Animal экспортируется с использованием ключевого слова по умолчанию. В отличие от обычных импортов, при импорте стандартных экспортных модулей можно напрямую указать имя импортируемого модуля, не заключая его в завитые скобки с помощью {}.

5. Модуль динамической нагрузки

Потому что в Javascrip{filter}t есть два способа загрузки модулей: CommonJS и AMD. При использовании Typescrip{filter}t необходимо писать разный код в зависимости от конфигурационного содержимого финальной компиляции для генерации Javascrip{filter}t.

Файл модуля animal.ts

Ссылка на CommonJS:

app.ts

Цитата AMD way:

app.ts







Предыдущий:Инструмент загрузки активационного кода BonusCloud [с исходным кодом]
Следующий:Отчёт для новичков: как MB получил это?
Отказ:
Всё программное обеспечение, программные материалы или статьи, публикуемые Code Farmer Network, предназначены исключительно для учебных и исследовательских целей; Вышеуказанный контент не должен использоваться в коммерческих или незаконных целях, иначе пользователи несут все последствия. Информация на этом сайте взята из Интернета, и споры по авторским правам не имеют отношения к этому сайту. Вы должны полностью удалить вышеуказанный контент с компьютера в течение 24 часов после загрузки. Если вам нравится программа, пожалуйста, поддержите подлинное программное обеспечение, купите регистрацию и получите лучшие подлинные услуги. Если есть нарушение, пожалуйста, свяжитесь с нами по электронной почте.

Mail To:help@itsvse.com