zgg-ui
Version:
2.0.1 正式版本 基于 Vue 3、UniApp 和 TypeScript 开发的多端适配移动端 UI 组件库,旨在提供丰富的组件集合,帮助开发者快速构建多端响应式的移动应用界面
30 lines (22 loc) • 791 B
text/typescript
import { Arrayable } from '../../libs/zType'
import { InjectionKey, shallowRef } from 'vue'
import { propsHook, PropsTypeHook } from '../../libs/zHooks'
interface PropsType extends PropsTypeHook {
modelValue?: CollapseModelValue
accordion?: boolean
showArrow?: boolean
arrowColor?: string
}
export type CollapseModelValue = Arrayable<number>
export type CollapseItemContext = {
uid: number
}
export type CollapseContext = Pick<PropsType, 'showArrow' | 'arrowColor'> & {
items: CollapseItemContext[]
addItem: (item: CollapseItemContext) => void
removeItem: (uid: number) => void
activeUid: number[]
handleItemClick: (uid: number) => void
}
export const collapseContextKey: InjectionKey<CollapseContext> =
Symbol('collapseContextKey')