操作表是一个向上滑动的窗格,用于向用户展示一组关于如何继续执行给定任务的替代方案。
你也可以使用操作表提示用户确认可能存在风险的操作。
操作表包含一个可选标题和一个或多个按钮,每个按钮对应要采取的操作。
包含以下组件
操作
操作按钮
操作标签
操作组
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
backdrop | 布尔值 | true | 启用操作表背景(操作表后面的深色半透明层) |
component | 字符串 | 'div' | 组件的 HTML 元素 |
opened | 布尔值 | false | 允许打开/关闭操作表并设置其初始状态 |
名称 | 类型 | 描述 |
---|---|---|
backdropclick | function(e) | 点击背景元素的处理程序 |
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
bold | 布尔值 | 未定义 | 使按钮文本变为粗体。覆盖 |
boldIos | 布尔值 | false | 在 iOS 主题中使按钮文本变为粗体 |
boldMaterial | 布尔值 | false | 在 Material 主题中使按钮文本变为粗体 |
colors | 对象 | 包含 Tailwind CSS 颜色类别的对象 | |
colors.activeBgIos | 字符串 | 'active:bg-neutral-200 dark:active:bg-neutral-700' | |
colors.activeBgMaterial | 字符串 | '' | |
colors.bgIos | 字符串 | 'bg-white dark:bg-neutral-800' | |
colors.bgMaterial | 字符串 | 'bg-md-light-surface-3 dark:bg-md-dark-surface-3' | |
colors.textIos | 字符串 | 'text-primary' | |
colors.textMaterial | 字符串 | 'text-md-light-on-surface dark:text-md-dark-on-surface' | |
component | 字符串 | 'button' | 组件的 HTML 元素 |
dividers | 布尔值 | 未定义 | 渲染按钮外部细线(边框)。如果未指定,将在 iOS 主题中启用 |
fontSizeIos | 字符串 | 'text-xl' | iOS 主题中的按钮文本字体大小 |
fontSizeMaterial | 字符串 | 'text-base' | Material 主题中的按钮文本字体大小 |
href | 字符串 | 链接的 | |
touchRipple | 布尔值 | true | 在 Material 主题中启用触摸涟漪效果 |
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
colors | 对象 | 包含 Tailwind CSS 颜色类别的对象 | |
colors.bgIos | 字符串 | 'bg-white dark:bg-neutral-800' | |
colors.bgMaterial | 字符串 | 'bg-md-light-surface-3 dark:bg-md-dark-surface-3' | |
colors.textIos | 字符串 | 'text-black text-opacity-55 dark:text-white dark:text-opacity-55' | |
colors.textMaterial | 字符串 | 'text-md-light-primary dark:text-md-dark-primary' | |
component | 字符串 | 'div' | 组件的 HTML 元素 |
dividers | 布尔值 | 未定义 | 渲染按钮外部细线(边框)。如果未指定,将在 iOS 主题中启用 |
fontSizeIos | 字符串 | 'text-sm' | iOS 主题中的按钮文本字体大小 |
fontSizeMaterial | 字符串 | 'text-sm' | Material 主题中的按钮文本字体大小 |
名称 | 类型 | 默认值 | 描述 |
---|---|---|---|
component | 字符串 | 'div' | 组件的 HTML 元素 |
dividers | 布尔值 | true | 渲染组外部细线(边框)。(仅在 Material 主题中) |
<template><k-page><k-navbar title="ActionSheet" /><k-block strong inset class="space-y-4"><p>Action Sheet is a slide-up pane for presenting the user with a set ofalternatives for how to proceed with a given task.</p></k-block><k-block-title>Open Action Sheet</k-block-title><k-block strong inset class="flex space-x-4 rtl:space-x-reverse"><k-button @click="() => (actionsOneOpened = true)">One group</k-button><k-button @click="() => (actionsTwoOpened = true)">Two groups</k-button></k-block><k-actions:opened="actionsOneOpened"@backdropclick="() => (actionsOneOpened = false)"><k-actions-group><k-actions-label>Do something</k-actions-label><k-actions-button bold @click="() => (actionsOneOpened = false)">Button 1</k-actions-button><k-actions-button @click="() => (actionsOneOpened = false)">Button 2</k-actions-button><k-actions-button @click="() => (actionsOneOpened = false)">Cancel</k-actions-button></k-actions-group></k-actions><k-actions:opened="actionsTwoOpened"@backdropclick="() => (actionsTwoOpened = false)"><k-actions-group><k-actions-label>Do something</k-actions-label><k-actions-button bold @click="() => (actionsTwoOpened = false)">Button 1</k-actions-button><k-actions-button @click="() => (actionsTwoOpened = false)">Button 2</k-actions-button></k-actions-group><k-actions-group><k-actions-button @click="() => (actionsTwoOpened = false)">Cancel</k-actions-button></k-actions-group></k-actions></k-page></template><script>import {kPage,kNavbar,kNavbarBackLink,kBlockTitle,kBlock,kButton,kActions,kActionsButton,kActionsLabel,kActionsGroup,} from 'konsta/vue';import { ref } from 'vue';export default {components: {kPage,kNavbar,kNavbarBackLink,kBlockTitle,kBlock,kButton,kActions,kActionsButton,kActionsLabel,kActionsGroup,},setup() {const actionsOneOpened = ref(false);const actionsTwoOpened = ref(false);return {actionsOneOpened,actionsTwoOpened,};},};</script>