Merge pull request 'added ts string literal types' (#8) from feat/ts-literal into main
Reviewed-on: #8
This commit is contained in:
@@ -154,6 +154,14 @@ export default defineConfig({
|
||||
{ text: 'Ansible Inventory Generation', link: '/terraform/ansible-inventory-generation' },
|
||||
]
|
||||
},
|
||||
{
|
||||
text: 'Typescript',
|
||||
link: '/typescript/',
|
||||
collapsed: true,
|
||||
items: [
|
||||
{ text: 'String Literal Types', link: '/typescript/string-literal-types' },
|
||||
]
|
||||
}
|
||||
],
|
||||
|
||||
socialLinks: [
|
||||
|
@@ -62,6 +62,10 @@ hero:
|
||||
text: Terraform
|
||||
link: /terraform/
|
||||
|
||||
- theme: alt
|
||||
text: Typescript
|
||||
link: /typescript/
|
||||
|
||||
# features:
|
||||
# - title: Feature A
|
||||
# details: Lorem ipsum dolor sit amet, consectetur adipiscing elit
|
||||
|
3
docs/typescript/index.md
Normal file
3
docs/typescript/index.md
Normal file
@@ -0,0 +1,3 @@
|
||||
# Typescript Snippets and Musings
|
||||
|
||||
#### [String Literal Types](./string-literal-types.md)
|
22
docs/typescript/string-literal-types.md
Normal file
22
docs/typescript/string-literal-types.md
Normal file
@@ -0,0 +1,22 @@
|
||||
# String Literal Types
|
||||
|
||||
String literal types are a powerful feature in TypeScript that allows you to specify exact string values a variable can hold. This is useful for creating more precise types and can help catch errors at compile time.
|
||||
|
||||
## Example
|
||||
|
||||
```typescript
|
||||
const DIRECTIONS = ["left", "right", "up", "down"] as const;
|
||||
type Direction = typeof DIRECTIONS[number];
|
||||
|
||||
// Usage
|
||||
function move(direction: Direction) {
|
||||
// ...
|
||||
}
|
||||
|
||||
// Array Usage
|
||||
for (const dir of DIRECTIONS) {
|
||||
move(dir);
|
||||
}
|
||||
```
|
||||
|
||||
In the above examples you can see how we can both use the `Direction` type directly and also leverage the `DIRECTIONS` array for type-safe values.
|
Reference in New Issue
Block a user