chore: consolidate new foundation and archive v1 (#1495)
This commit is contained in:
@@ -0,0 +1,38 @@
|
||||
---
|
||||
category: Utilities
|
||||
---
|
||||
|
||||
# makeDestructurable
|
||||
|
||||
Make isomorphic destructurable for object and array at the same time. See [this blog](https://antfu.me/posts/destructuring-with-object-or-array/) for more details.
|
||||
|
||||
## Usage
|
||||
|
||||
TypeScript Example:
|
||||
|
||||
```ts twoslash include main
|
||||
import { makeDestructurable } from '@vueuse/core';
|
||||
|
||||
const foo = { name: 'foo' };
|
||||
const bar = 1024;
|
||||
|
||||
const obj = makeDestructurable({ foo, bar } as const, [foo, bar] as const);
|
||||
```
|
||||
|
||||
Usage:
|
||||
|
||||
```ts twoslash
|
||||
// @include: main
|
||||
// ---cut---
|
||||
let { foo, bar } = obj;
|
||||
let [foo, bar] = obj;
|
||||
```
|
||||
|
||||
## Type Declarations
|
||||
|
||||
```ts
|
||||
export declare function makeDestructurable<
|
||||
T extends Record<string, unknown>,
|
||||
A extends readonly any[],
|
||||
>(obj: T, arr: A): T & A;
|
||||
```
|
||||
Reference in New Issue
Block a user