提示词操作 PromptAction
Prompt 工具栏中的操作控件,包括动作按钮 PromptAction、带标签开关 PromptSwitch 与下拉选择 PromptSelect。
基础使用
把三者放进 Prompt 的工具栏插槽即可使用。PromptAction 通过 label 或 default 插槽展示文本,icon 与 suffix 插槽放置图标和尾部内容;PromptSwitch 用 v-model 控制激活状态,激活时展示关闭入口;PromptSelect 通过 options 提供选项,并用 v-model 保存选中值。三者都会跟随 Prompt 的 disabled 与 readonly 一起禁用。
Ask anything
隐藏源代码
API
PromptActionProps
| 属性 | 类型 | 可选 | 默认值 | 描述 | 版本 |
|---|---|---|---|---|---|
| label | string | 是 | | PromptAction 的文本。 | 0.2.1 |
| disabled | boolean | 是 | false | PromptAction 是否禁用。 | 0.2.1 |
PromptActionSlots
| 插槽 | 参数 | 描述 | 版本 |
|---|---|---|---|
| default | | PromptAction 的文本内容。 | 0.2.1 |
| icon | | PromptAction 的图标。 | 0.2.1 |
| suffix | | PromptAction 的尾部内容。 | 0.2.1 |
PromptSwitchProps
| 属性 | 类型 | 可选 | 默认值 | 描述 | 版本 |
|---|---|---|---|---|---|
| label | string | 是 | | PromptSwitch 的文本。 | 0.2.1 |
| disabled | boolean | 是 | false | PromptSwitch 是否禁用。 | 0.2.1 |
| modelValue | boolean | 是 | false | 受控模式下的激活状态。 | 0.2.1 |
| defaultValue | boolean | 是 | false | 非受控模式下初始的激活状态。 | 0.2.1 |
| showClose | boolean | 是 | true | 激活时是否展示关闭入口。 | 0.2.1 |
PromptSwitchEvents
| 事件 | 参数 | 描述 | 版本 |
|---|---|---|---|
| update:modelValue | value: boolean | 激活状态变化时触发。 | 0.2.1 |
PromptSwitchSlots
| 插槽 | 参数 | 描述 | 版本 |
|---|---|---|---|
| default | | PromptSwitch 的文本内容。 | 0.2.1 |
| icon | | PromptSwitch 的图标。 | 0.2.1 |
PromptSelectProps
| 属性 | 类型 | 可选 | 默认值 | 描述 | 版本 |
|---|---|---|---|---|---|
| disabled | boolean | 是 | false | PromptSelect 是否禁用。 | 0.2.1 |
| options | (string | PromptSelectOption | PromptSelectGroupOption)[] | 是 | | 下拉列表的数据。 | 0.2.1 |
| modelValue | any | 是 | | 受控模式下的选中值。 | 0.2.1 |
| defaultValue | any | 是 | | 非受控模式下初始的选中值。 | 0.2.1 |
| caretDuration | number | 是 | 250 | 下拉指示箭头动画的时长。 | 0.2.1 |
| dropdownProps | Omit<PopupProps, 'visible' | 'defaultVisible' | 'content'> & EmitEvent<PopupEvents> | 是 | | 下拉弹出层的属性与事件。 | 0.2.1 |
PromptSelectEvents
| 事件 | 参数 | 描述 | 版本 |
|---|---|---|---|
| update:modelValue | value: any | 选中值变化时触发。 | 0.2.1 |
| open | e: MouseEvent | 下拉列表展开时触发。 | 0.2.1 |
| close | e: MouseEvent | TouchEvent | KeyboardEvent | 下拉列表关闭时触发。 | 0.2.1 |
| select | value: any, option: string | PromptSelectOption, e: MouseEvent | 在下拉列表中选择一项时触发。 | 0.2.1 |
PromptSelectSlots
| 插槽 | 参数 | 描述 | 版本 |
|---|---|---|---|
| default | | PromptSelect 的文本内容。 | 0.2.1 |
| icon | | PromptSelect 的图标。 | 0.2.1 |
| option | option: string | PromptSelectOption | 下拉列表中选项的内容。 | 0.2.1 |
| group-label | option: PromptSelectGroupOption | 下拉列表中分组标题的内容。 | 0.2.1 |
PromptSelectExpose
| 属性 | 类型 | 可选 | 默认值 | 描述 | 版本 |
|---|---|---|---|---|---|
| open | () => void | 否 | | 展开下拉列表。 | 0.2.1 |
| close | () => void | 否 | | 关闭下拉列表。 | 0.2.1 |
PromptSelectOption
ts
export interface PromptSelectOption extends OptionListOption {}
export interface PromptSelectGroupOption extends OptionListGroupOption {
children: (PromptSelectOption | string)[]
}OptionListOption, OptionListOption
ts
export interface OptionListOption<T = any> extends Option<T> {
disabled?: boolean
key?: string | number | symbol
}
export interface OptionListGroupOption extends GroupOption {
label: string
key: string | number | symbol
children: (OptionListOption | string)[]
}Option, GroupOption
ts
export interface Option<T = any> {
value: T
label: string
}
export interface GroupOption<T = any> {
children: (Option<T> | string)[]
type: 'group'
}EmitEvent
ts
export type EmitEvent<T extends Record<string, any>> = {
[K in keyof T as `on${Capitalize<K & string>}`]?: (...args: T[K]) => void
}RestAttrs
ts
import type { StyleValue } from 'vue'
export type VueClassValue = string | Record<string, any> | VueClassValue[]
export type VueStyleValue = StyleValue
export type RestAttrs = {
style?: VueStyleValue | null
class?: VueClassValue | null
[x: string]: any
}