The course is part of this learning path
This module looks at how to use Modules in TypeScript, as well as how to import, export, and create and bundle modules.
The objectives of this module are to provide you with an understanding of:
- How to export from Modules
- How to import from Modules
- How to create and bundle Modules
This learning path is aimed at all who wish to learn how to use TypeScript.
We welcome all feedback and suggestions - please contact us at firstname.lastname@example.org to let us know what you think.
When using modules, it's important to remember that they run in their own scope. This avoids pollution in the global scope. Only what is exported from the module, is exposed externally. And only what is imported into a module, can be used internally. Any declaration could be exported through using the export keyword.
Export statements, can be used to export the item using its own name or by aliasing it under a different name. As shown here at the bottom where a car is exported as "BaseCar". Specifying the exports, at the bottom of the file is clear now. As it clearly shows what the module exports, rather than having a number of exports statements, throughout the file.
Optionally, a default export can be specified. This is used a lot in the apt. There are three syntaxes available here. You can use an export default statement when declaring. Although this cannot be used when exporting, commonly used to define array functions. Or you can export at the bottom of the file using one of the two methods shown.
The export statement and then the curly braces with the item name and then as default followed. Or you can simply use the export default statement and the name of the item to export. It's also worth noting, that a module can only have one default export.
Ed is an Outstanding Trainer in Software Development, with a passion for technology and its uses and holding more than 10 years’ experience.
Ed is responsible for delivering QA’s Programming Foundations course using the Eclipse IDE. His skillset extends into the DevOps sphere, where he is able to deliver courses based around Agile/Scrum practices, version control, and CI/CD.