useDateFormat
时间格式化
<script setup lang="ts">import { useNow, useDateFormat } from '@vueuse/core'const formatted = useDateFormat(useNow(), 'YYYY-MM-DD HH:mm:ss')</script><template><div>{{ formatted }}</div>
</template>
<script setup lang="ts">import { useNow, useDateFormat } from '@vueuse/core'const formatted = useDateFormat(useNow(), 'YYYY-MM-DD (ddd)', { locales: 'en-US' })</script><template><div>{{ formatted }}</div>
</template>
<script setup lang="ts">import { useDateFormat } from '@vueuse/core'const customMeridiem = (hours: number, minutes: number, isLowercase?: boolean, hasPeriod?: boolean) => {const m = hours > 11 ? (isLowercase ? 'μμ' : 'ΜΜ') : (isLowercase ? 'πμ' : 'ΠΜ')return hasPeriod ? m.split('').reduce((acc, current) => acc += `${current}.`, '') : m
}const am = useDateFormat('2022-01-01 05:05:05', 'hh:mm:ss A', { customMeridiem })
// am.value = '05:05:05 ΠΜ'
const pm = useDateFormat('2022-01-01 17:05:05', 'hh:mm:ss AA', { customMeridiem })
// pm.value = '05:05:05 Μ.Μ.'
</script>
useClipboard
复制选中文本
import { useClipboard } from '@vueuse/core'const source = ref('Hello')
const { text, copy, copied, isSupported } = useClipboard({ source })
<div v-if="isSupported"><button @click='copy(source)'><!-- by default, `copied` will be reset in 1.5s --><span v-if='!copied'>Copy</span><span v-else>Copied!</span></button><p>Current copied: <code>{{ text || 'none' }}</code></p>
</div>
<p v-else>Your browser does not support Clipboard API
</p>