global-feedback
3
总安装量
3
周安装量
#58297
全站排名
安装命令
npx skills add https://github.com/wot-ui/wot-starter --skill global-feedback
Agent 安装分布
openclaw
3
claude-code
3
github-copilot
3
codex
3
kimi-cli
3
gemini-cli
3
Skill 文档
å ¨å±åé¦ç»ä»¶
wot-starter æä¾äºå ¨å± ToastãMessageãLoading ç»ä»¶ï¼æ¯æè·¨é¡µé¢è°ç¨ã
ç»ä»¶å表
| ç»ä»¶ | ç¨é | Composable |
|---|---|---|
| GlobalToast | è½»æç¤º | useGlobalToast() |
| GlobalMessage | ç¡®è®¤å¼¹çª | useGlobalMessage() |
| GlobalLoading | å è½½ç¶æ | useGlobalLoading() |
useGlobalToast
åºç¡ç¨æ³
const { show, success, error, info, warning, close } = useGlobalToast()
// æ¾ç¤ºæç¤º
show('è¿æ¯ä¸æ¡æç¤º')
// æåæç¤º
success('æä½æå')
// é误æç¤º
error('æä½å¤±è´¥')
// ä¿¡æ¯æç¤º
info('æç¤ºä¿¡æ¯')
// è¦åæç¤º
warning('è¦åä¿¡æ¯')
èªå®ä¹é ç½®
show({
msg: 'èªå®ä¹æç¤º',
duration: 3000, // æç»æ¶é´
iconName: 'success', // 徿
position: 'middle', // ä½ç½®ï¼'top' | 'middle' | 'bottom'
direction: 'vertical', // æ¹åï¼'horizontal' | 'vertical'
})
useGlobalMessage
确认弹çª
const { confirm } = useGlobalMessage()
confirm({
title: 'æç¤º',
msg: 'ç¡®å®è¦å é¤åï¼',
confirmButtonText: 'ç¡®å®',
cancelButtonText: 'åæ¶',
success() {
console.log('ç¨æ·ç¹å»ç¡®å®')
},
fail() {
console.log('ç¨æ·ç¹å»åæ¶')
},
})
ä¸ Promise ç»å
const handleDelete = async () => {
return new Promise((resolve, reject) => {
confirm({
title: '确认å é¤',
msg: 'å é¤åæ æ³æ¢å¤',
success: resolve,
fail: reject,
})
})
}
try {
await handleDelete()
// ç¨æ·ç¡®è®¤ï¼æ§è¡å é¤
} catch {
// ç¨æ·åæ¶
}
useGlobalLoading
åºç¡ç¨æ³
const { show, hide } = useGlobalLoading()
// æ¾ç¤ºå è½½
show()
show('å è½½ä¸...')
// éèå è½½
hide()
å è£ å¼æ¥æä½
const fetchData = async () => {
const { show, hide } = useGlobalLoading()
show('æ°æ®å è½½ä¸...')
try {
const data = await api.getData()
return data
} finally {
hide()
}
}
å¨è·¯ç±å®å«ä¸ä½¿ç¨
// src/router/index.ts
router.beforeEach((to, from, next) => {
if (to.name === 'protected-page') {
const { confirm } = useGlobalMessage()
return new Promise((resolve, reject) => {
confirm({
title: 'éè¦ç»å½',
msg: 'æ¯å¦åå¾ç»å½ï¼',
success() {
next({ name: 'login' })
resolve()
},
fail() {
next(false)
reject()
},
})
})
}
next()
})
ç»ä»¶é ç½®
å
¨å±ç»ä»¶å·²å¨ App.ku.vue ä¸é
ç½®ï¼
<!-- App.ku.vue -->
<template>
<GlobalToast />
<GlobalMessage />
<GlobalLoading />
</template>
注æäºé¡¹
- è¿äº composable åºäº Pinia Store å®ç°
- æ¯æè·¨é¡µé¢è°ç¨
- èªå¨å¯¼å ¥ï¼æ éæå¨ import
- åæ¶åªä¼æ¾ç¤ºä¸ä¸ªå®ä¾