Pulled ALL skills from 15 source repositories: - anthropics/skills: 16 (docs, design, MCP, testing) - obra/superpowers: 14 (TDD, debugging, agents, planning) - coreyhaines31/marketingskills: 25 (marketing, CRO, SEO, growth) - better-auth/skills: 5 (auth patterns) - vercel-labs/agent-skills: 5 (React, design, Vercel) - antfu/skills: 16 (Vue, Vite, Vitest, pnpm, Turborepo) - Plus 13 individual skills from various repos Mosaic Stack is not limited to coding — the Orchestrator and subagents serve coding, business, design, marketing, writing, logistics, analysis, and more. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
77 lines
1.5 KiB
Markdown
77 lines
1.5 KiB
Markdown
---
|
|
category: Elements
|
|
---
|
|
|
|
# useWindowSize
|
|
|
|
Reactive window size
|
|
|
|
## Usage
|
|
|
|
```vue
|
|
<script setup lang="ts">
|
|
import { useWindowSize } from '@vueuse/core'
|
|
|
|
const { width, height } = useWindowSize()
|
|
</script>
|
|
|
|
<template>
|
|
<div>
|
|
Width: {{ width }}
|
|
Height: {{ height }}
|
|
</div>
|
|
</template>
|
|
```
|
|
|
|
## Component Usage
|
|
|
|
```vue
|
|
<template>
|
|
<UseWindowSize v-slot="{ width, height }">
|
|
Width: {{ width }}
|
|
Height: {{ height }}
|
|
</UseWindowSize>
|
|
</template>
|
|
```
|
|
|
|
## Type Declarations
|
|
|
|
```ts
|
|
export interface UseWindowSizeOptions extends ConfigurableWindow {
|
|
initialWidth?: number
|
|
initialHeight?: number
|
|
/**
|
|
* Listen to window `orientationchange` event
|
|
*
|
|
* @default true
|
|
*/
|
|
listenOrientation?: boolean
|
|
/**
|
|
* Whether the scrollbar should be included in the width and height
|
|
* Only effective when `type` is `'inner'`
|
|
*
|
|
* @default true
|
|
*/
|
|
includeScrollbar?: boolean
|
|
/**
|
|
* Use `window.innerWidth` or `window.outerWidth` or `window.visualViewport`
|
|
* visualViewport documentation from MDN(https://developer.mozilla.org/zh-CN/docs/Web/API/VisualViewport)
|
|
* @default 'inner'
|
|
*/
|
|
type?: "inner" | "outer" | "visual"
|
|
}
|
|
/**
|
|
* Reactive window size.
|
|
*
|
|
* @see https://vueuse.org/useWindowSize
|
|
* @param options
|
|
*
|
|
* @__NO_SIDE_EFFECTS__
|
|
*/
|
|
export declare function useWindowSize(options?: UseWindowSizeOptions): {
|
|
width: ShallowRef<number, number>
|
|
height: ShallowRef<number, number>
|
|
}
|
|
export type UseWindowSizeReturn = ReturnType<typeof useWindowSize>
|
|
```
|