Typescript Guidelines
Naming Conventions
Use PascalCase for type names.
Do not use
I
as a prefix for interface names.Use PascalCase for enum values.
Use camelCase for function names.
Use camelCase for property names and local variables.
Do not use
_
as a prefix for private properties.Use whole words in names when possible.
Types
Do not export types/functions unless you need to share it across multiple components.
Shared types should be defined in
*.types.ts
.Within a file, type definitions should come first.
Strings
Use double quotes for strings.
All strings visible to the user need to be localized.
Style
Use arrow functions over anonymous function expressions.
Only surround arrow function parameters when necessary. For example,
(x) => x + x
is wrong but the following are correct:x => x + x
(x,y) => x + y
<T>(x: T, y: T) => x === y
Always surround loop and conditional bodies with curly braces. Statements on the same line are allowed to omit braces.
Open curly braces always go on the same line as whatever necessitates them.
Parenthesized constructs should have no surrounding whitespace. A single space follows commas, colons, and semicolons in those constructs. For example:
for (var i = 0, n = str.length; i < 10; i++) { }
if (x < 10) { }
function f(x: number, y: string): void { }
Use a single declaration per variable statement (i.e. use
var x = 1; var y = 2;
overvar x = 1, y = 2;
).else
goes on a separate line from the closing curly brace.Use 4 spaces per indentation.
Last updated