How to Export Statement in TypeScript
-
Use the
exportStatement in TypeScript - Types of Export in TypeScript
- Export Everything in TypeScript
The export keyword in TypeScript is used for exporting variables, constants, classes, functions, and interfaces or type aliases across different files. It becomes very useful for efficient file management across large projects in TypeScript.
This article will demonstrate using the export statement in TypeScript.
Use the export Statement in TypeScript
The syntax for export statements starts with the export keyword followed by the element to be exported, which can be imported into another file using the import keyword.
File1.ts:
export SomeFunction() {
// body of the function
}
File2.ts:
import { SomeFunction } from "./File1";
SomeFunction();
The above shows the syntax and a basic example of how the export keyword can be used in TypeScript to import and export a module.
Types of Export in TypeScript
TypeScript has different export statements, one being the named export and the other the default export. The default export is limited to one default export per file, while there can be multiple named exports or normal export statements.
File1.ts:
const AddTwoNumbers = (a : number, b : number) : number => {
return a + b;
}
export default AddTwoNumbers;
File2.ts:
import AddTwoNumbers from "./File1"
const result = AddTwoNumbers(4,5);
Thus in the above example, two numbers are added after using the default export function defined in File1.ts. Now the function can be used even with a different name.
For example:
File2.ts:
import AddNumbers from "./File1"
const result = AddNumbers(4,5);
Thus any name can be used in the default export condition. However, default exports are limited to only one per file.
We must use the non-default or the named export to export more elements. The modules exported are imported with the same name.
File1.ts:
const AddNumbers = (a : number, b : number) : number => {
return a + b;
}
const SubtractTwoNumbers = (a : number, b : number) : number => {
return a - b;
}
export { AddNumbers, SubtractTwoNumbers };
File2.ts:
import { AddNumbers, SubtractTwoNumbers } from "./File1"
const resultAdd = AddNumbers(4,5);
const resultSub = SubtractTwoNumbers(4,5);
The above shows the example of named exports and imports in the respective files. They have to be enclosed within curly brackets, and unlike default export, there can be any number of named exports.
Another way of using default exports in TypeScript is using the export = syntax.
File1.ts:
class LengthValidator {
check(s : string) {
return s.length > 0;
}
}
export = LengthValidator;
File2.ts:
import lengthChecker = require("./File1");
let validator = lengthChecker();
var testString : string = "test"
if ( validator.check(testString)) {
console.log("Okay");
} else {
console.log("Not working");
}
Export Everything in TypeScript
Sometimes it becomes important to export all the elements defined in a certain file. It can be done via the export and the * operator.
File1.ts:
export const AddNumbers = (a : number, b : number) : number => {
return a + b;
}
export const SubtractTwoNumbers = (a : number, b : number) : number => {
return a - b;
}
export * as utils from "./File1"
File2.ts:
import {utils} from "./File1"
const resultAdd = utils.AddNumbers(4,5);
const resultSub = utils.SubtractTwoNumbers(4,5);
Thus everything in File1.ts is exported as utils and can be imported into a different file, and the functions can be referenced as shown in the example above.
