useJwt
jwt-decode
的封裝器。
範例
標頭
{
"alg": "HS256",
"typ": "JWT"
}
有效負載
{
"sub": "1234567890",
"iat": 1516239022
}
安裝
bash
npm install jwt-decode@^4
用法
typescript
import { useJwt } from '@vueuse/integrations/useJwt'
import { defineComponent } from 'vue'
export default defineComponent({
setup() {
const encodedJwt = ref('eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiIxMjM0NTY3ODkwIiwiaWF0IjoxNTE2MjM5MDIyfQ.L8i6g3PfcHlioHCCPURC9pmXT7gdJpx3kOoyAfNUwCc')
const { header, payload } = useJwt(encodedJwt)
return { header, payload }
},
})
類型宣告
typescript
export interface UseJwtOptions<Fallback> {
/**
* Value returned when encounter error on decoding
*
* @default null
*/
fallbackValue?: Fallback
/**
* Error callback for decoding
*/
onError?: (error: unknown) => void
}
export interface UseJwtReturn<Payload, Header, Fallback> {
header: ComputedRef<Header | Fallback>
payload: ComputedRef<Payload | Fallback>
}
/**
* Reactive decoded jwt token.
*
* @see https://vueuse.dev.org.tw/useJwt
*/
export declare function useJwt<
Payload extends object = JwtPayload,
Header extends object = JwtHeader,
Fallback = null,
>(
encodedJwt: MaybeRefOrGetter<string>,
options?: UseJwtOptions<Fallback>,
): UseJwtReturn<Payload, Header, Fallback>
原始碼
貢獻者
變更日誌
v12.8.0
於 2025/3/5v12.3.0
於 2025/1/259f75
- feat(toValue): 棄用 @vueuse/shared
中的 toValue
,改用 Vue 的原生型別v12.0.0-beta.1
於 2024/11/21v11.0.0-beta.1
於 2024/6/12v10.0.0-beta.4
於 2023/4/134d757
- feat(types)!: 將 MaybeComputedRef
重新命名為 MaybeRefOrGetter
0a72b
- feat(toValue): 將 resolveUnref
重新命名為 toValue