使用场景 ​
在限定区域内显示长内容并观察滚动位置。
契约与组合 ​
height 提供固定视窗,maxHeight 保持内容较小时自然高度。 完整说明。
公开 ref 支持 scrollTo、setScrollTop、setScrollLeft、update、handleScroll 与 wrapRef。 完整说明。
在 infinite 完整示例中,end-reached 的 bottom 分支自动追加5条;top / left / right 仅记录方向,不追加。追加会增加实际滚动内容高度,下一次到底可继续加载;该组合使用原生事件与宿主状态。
基础用法与状态 ​
基础用法与状态
<template>
<AsamScrollbar height="180px" @scroll="top = Math.round($event.scrollTop)">
<p v-for="line in 20" :key="line" class="panel example-paragraph">记录 {{ line }}</p>
</AsamScrollbar>
<p class="example-paragraph" role="status">滚动位置:{{ top }}</p>
</template>
<script lang="ts" setup>
defineOptions({ name: 'AsamScrollbarBasicDemo' });
import { ref } from 'vue';
import { AsamScrollbar } from '@asam-ui/ui';
const top = ref(0);
</script>
<style scoped>
.panel {
padding: var(--asam-space-md);
background: var(--asam-color-surface);
border: 1px solid var(--asam-color-border);
}
</style>
<style scoped>
p:where(.example-paragraph) {
margin-block: 16px;
line-height: 1.8;
overflow-wrap: anywhere;
}
</style>
<template>
<AsamScrollbar height="180px" @scroll="top = Math.round($event.scrollTop)">
<p v-for="line in 20" :key="line" class="panel example-paragraph">记录 {{ line }}</p>
</AsamScrollbar>
<p class="example-paragraph" role="status">滚动位置:{{ top }}</p>
</template>
<script setup>
defineOptions({ name: 'AsamScrollbarBasicDemo' });
import { ref } from 'vue';
import { AsamScrollbar } from '@asam-ui/ui';
const top = ref(0);
</script>
<style scoped>
.panel {
padding: var(--asam-space-md);
background: var(--asam-color-surface);
border: 1px solid var(--asam-color-border);
}
</style>
<style scoped>
p:where(.example-paragraph) {
margin-block: 16px;
line-height: 1.8;
overflow-wrap: anywhere;
}
</style>
双向滚动、实例控制与末端事件 ​
双向滚动、实例控制与末端事件
<template>
<div class="demo-root-layout">
<AsamButton
native-type="submit"
type="default"
@click="bar?.scrollTo({ top: 1000, left: 500 })"
>滚动到底部右侧</AsamButton
>
<AsamButton
native-type="submit"
type="default"
@click="
bar?.setScrollTop(0);
bar?.setScrollLeft(0);
"
>
返回原点
</AsamButton>
<AsamButton native-type="submit" type="default" @click="append">追加内容并更新</AsamButton>
<AsamCheckboxItem v-model="always">滚动条持续显示</AsamCheckboxItem>
<AsamCheckboxItem v-model="native">原生滚动</AsamCheckboxItem>
<AsamScrollbar
ref="bar"
style="width: 360px; max-width: 100%"
:max-height="220"
:always="always"
:native="native"
:distance="20"
@scroll="position = `${$event.scrollTop}:${$event.scrollLeft}`"
@end-reached="end = $event"
>
<div style="width: 760px">
<p v-for="id in count" :key="id" class="line example-paragraph">记录 {{ id }}</p>
</div>
</AsamScrollbar>
<p class="example-paragraph" role="status">位置 {{ position }};触底方向 {{ end }};记录 {{ count }}</p>
</div>
</template>
<script lang="ts" setup>
defineOptions({ name: 'AsamScrollbarControlsDemo' });
import { nextTick, ref } from 'vue';
import { AsamCheckboxItem, AsamButton, AsamScrollbar } from '@asam-ui/ui';
import type { AsamScrollbarExpose } from '@asam-ui/ui';
const bar = ref<AsamScrollbarExpose>();
const count = ref(20);
const always = ref(true);
const native = ref(false);
const position = ref('0:0');
const end = ref('');
async function append(): Promise<void> {
count.value += 5;
await nextTick();
bar.value?.update();
}
</script>
<style scoped>
.line {
padding: var(--asam-space-sm);
margin: 0;
border-bottom: 1px solid var(--asam-color-border);
}
</style>
<style scoped>
.demo-root-layout {
display: grid;
gap: var(--asam-space-md);
justify-items: start;
}
.demo-root-layout > :is(p, pre, output) {
margin-block: 0;
}
</style>
<style scoped>
p:where(.example-paragraph) {
margin-block: 16px;
line-height: 1.8;
overflow-wrap: anywhere;
}
</style>
<template>
<div class="demo-root-layout">
<AsamButton
native-type="submit"
type="default"
@click="bar?.scrollTo({ top: 1000, left: 500 })"
>滚动到底部右侧</AsamButton
>
<AsamButton
native-type="submit"
type="default"
@click="
bar?.setScrollTop(0);
bar?.setScrollLeft(0);
"
>
返回原点
</AsamButton>
<AsamButton native-type="submit" type="default" @click="append">追加内容并更新</AsamButton>
<AsamCheckboxItem v-model="always">滚动条持续显示</AsamCheckboxItem>
<AsamCheckboxItem v-model="native">原生滚动</AsamCheckboxItem>
<AsamScrollbar
ref="bar"
style="width: 360px; max-width: 100%"
:max-height="220"
:always="always"
:native="native"
:distance="20"
@scroll="position = `${$event.scrollTop}:${$event.scrollLeft}`"
@end-reached="end = $event"
>
<div style="width: 760px">
<p v-for="id in count" :key="id" class="line example-paragraph">记录 {{ id }}</p>
</div>
</AsamScrollbar>
<p class="example-paragraph" role="status">位置 {{ position }};触底方向 {{ end }};记录 {{ count }}</p>
</div>
</template>
<script setup>
defineOptions({ name: 'AsamScrollbarControlsDemo' });
import { nextTick, ref } from 'vue';
import { AsamCheckboxItem, AsamButton, AsamScrollbar } from '@asam-ui/ui';
const bar = ref();
const count = ref(20);
const always = ref(true);
const native = ref(false);
const position = ref('0:0');
const end = ref('');
async function append() {
count.value += 5;
await nextTick();
bar.value?.update();
}
</script>
<style scoped>
.line {
padding: var(--asam-space-sm);
margin: 0;
border-bottom: 1px solid var(--asam-color-border);
}
</style>
<style scoped>
.demo-root-layout {
display: grid;
gap: var(--asam-space-md);
justify-items: start;
}
.demo-root-layout > :is(p, pre, output) {
margin-block: 0;
}
</style>
<style scoped>
p:where(.example-paragraph) {
margin-block: 16px;
line-height: 1.8;
overflow-wrap: anywhere;
}
</style>
底部自动追加与非底部方向 ​
底部自动追加与非底部方向
<template>
<AsamScrollbar ref="scrollbar" height="240px" style="width: 360px" @end-reached="loadMore">
<div class="scroll-content">
<p v-for="item in count" :key="item" class="scroll-row example-paragraph">记录 {{ item }}</p>
</div>
</AsamScrollbar>
<p class="example-paragraph" data-testid="scrollbar-infinite-state">
{{ count }} 条;最近方向 {{ lastDirection }};追加 {{ batches }} 次
</p>
<AsamButton native-type="submit" type="default" @click="scrollbar?.setScrollTop(0)"
>返回顶部</AsamButton
>
</template>
<script lang="ts" setup>
defineOptions({ name: 'AsamScrollbarInfiniteDemo' });
import { ref } from 'vue';
import { AsamButton, AsamScrollbar } from '@asam-ui/ui';
import type { AsamScrollbarDirection, AsamScrollbarExpose } from '@asam-ui/ui';
const scrollbar = ref<AsamScrollbarExpose>();
const count = ref(20);
const batches = ref(0);
const lastDirection = ref<AsamScrollbarDirection>();
function loadMore(direction: AsamScrollbarDirection): void {
lastDirection.value = direction;
if (direction !== 'bottom') return;
count.value += 5;
batches.value++;
}
</script>
<style scoped>
.scroll-content {
min-width: 640px;
}
.scroll-row {
box-sizing: border-box;
min-height: 40px;
margin: 0;
padding: var(--asam-space-sm);
border-bottom: 1px solid var(--asam-color-border);
}
</style>
<style scoped>
p:where(.example-paragraph) {
margin-block: 16px;
line-height: 1.8;
overflow-wrap: anywhere;
}
</style>
<template>
<AsamScrollbar ref="scrollbar" height="240px" style="width: 360px" @end-reached="loadMore">
<div class="scroll-content">
<p v-for="item in count" :key="item" class="scroll-row example-paragraph">记录 {{ item }}</p>
</div>
</AsamScrollbar>
<p class="example-paragraph" data-testid="scrollbar-infinite-state">
{{ count }} 条;最近方向 {{ lastDirection }};追加 {{ batches }} 次
</p>
<AsamButton native-type="submit" type="default" @click="scrollbar?.setScrollTop(0)"
>返回顶部</AsamButton
>
</template>
<script setup>
defineOptions({ name: 'AsamScrollbarInfiniteDemo' });
import { ref } from 'vue';
import { AsamButton, AsamScrollbar } from '@asam-ui/ui';
const scrollbar = ref();
const count = ref(20);
const batches = ref(0);
const lastDirection = ref();
function loadMore(direction) {
lastDirection.value = direction;
if (direction !== 'bottom') return;
count.value += 5;
batches.value++;
}
</script>
<style scoped>
.scroll-content {
min-width: 640px;
}
.scroll-row {
box-sizing: border-box;
min-height: 40px;
margin: 0;
padding: var(--asam-space-sm);
border-bottom: 1px solid var(--asam-color-border);
}
</style>
<style scoped>
p:where(.example-paragraph) {
margin-block: 16px;
line-height: 1.8;
overflow-wrap: anywhere;
}
</style>
实例、类型与边界 ​
公开 API 与下列完整 SFC 来自同一组件入口。TS 和 JS 演示分别提供所有本地依赖文件;类型约束只出现在 TS 中。远程请求与业务持久化由宿主承担。
API
属性 AsamScrollbarProps
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
distance | 触发距离,单位像素。 | number | undefined | 0 |
height | 滚动条高度。 | string | number | undefined | '' |
maxHeight | 滚动条最大高度。 | string | number | undefined | '' |
native | 是否使用浏览器原生滚动条。 | boolean | undefined | false |
wrapStyle | 滚动容器样式。 | (AsamScrollbarProps)["wrapStyle"] | '' |
wrapClass | 滚动容器类名。 | AsamScrollbarProps["wrapClass"] | '' |
viewClass | 视图类名。 | AsamScrollbarProps["wrapClass"] | '' |
viewStyle | 视图样式。 | (AsamScrollbarProps)["viewStyle"] | '' |
noresize | 不响应容器尺寸变化;尺寸固定时可启用以优化性能。 | boolean | undefined | false |
tag | 视图使用的元素标签。 | enum"object" | "form" | "small" | "style" | "title" | "map" | "dialog" | "menu" | "mark" | "data" | "select" | "search" | "button" | "div" | "template" | "input" | "label" | "span" | "a" | "abbr" | "address" | "area" | "article" | "aside" | "audio" | "b" | "base" | "bdi" | "bdo" | "blockquote" | "body" | "br" | "canvas" | "caption" | "cite" | "code" | "col" | "colgroup" | "datalist" | "dd" | "del" | "details" | "dfn" | "dl" | "dt" | "em" | "embed" | "fieldset" | "figcaption" | "figure" | "footer" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "head" | "header" | "hgroup" | "hr" | "html" | "i" | "iframe" | "img" | "ins" | "kbd" | "legend" | "li" | "link" | "main" | "meta" | "meter" | "nav" | "noscript" | "ol" | "optgroup" | "option" | "output" | "p" | "picture" | "pre" | "progress" | "q" | "rp" | "rt" | "ruby" | "s" | "samp" | "script" | "section" | "slot" | "source" | "strong" | "sub" | "summary" | "sup" | "table" | "tbody" | "td" | "textarea" | "tfoot" | "th" | "thead" | "time" | "tr" | "track" | "u" | "ul" | "var" | "video" | "wbr"完整类型:(string & {}) | keyof HTMLElementTagNameMap | undefined | 'div' |
always | 始终显示。 | boolean | undefined | false |
minSize | 滚动条最小尺寸。 | number | undefined | 20 |
tabindex | 滚动容器的 tabindex。 | string | number | undefined | undefined |
id | 视图标识。 | string | undefined | — |
role | 视图角色。 | string | undefined | — |
ariaLabel | 原生 aria-label属性 | string | undefined | — |
ariaOrientation | 原生 aria-orientation 属性。 | enum"undefined" | "horizontal" | "vertical"完整类型:"undefined" | "horizontal" | "vertical" | undefined | — |
onScroll | — | ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined | — |
onEnd-reached | — | ((direction: AsamScrollbarDirection) => any) | undefined | — |
key | — | PropertyKey | undefined | — |
ref | — | VNodeRef | undefined | — |
ref_for | — | boolean | undefined | — |
ref_key | — | string | undefined | — |
onVnodeBeforeMount | — | (AsamScrollbarProps)["onVnodeBeforeMount"] | — |
onVnodeMounted | — | (AsamScrollbarProps)["onVnodeMounted"] | — |
onVnodeBeforeUpdate | — | (AsamScrollbarProps)["onVnodeBeforeUpdate"] | — |
onVnodeUpdated | — | (AsamScrollbarProps)["onVnodeUpdated"] | — |
onVnodeBeforeUnmount | — | (AsamScrollbarProps)["onVnodeBeforeUnmount"] | — |
onVnodeUnmounted | — | (AsamScrollbarProps)["onVnodeUnmounted"] | — |
class | — | unknown | — |
style | — | unknown | — |
实例方法与状态 AsamScrollbarExpose
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
$ | — | AsamScrollbarExpose["$"] | — |
$data | — | AsamTableColumnExpose | — |
$props | — | AsamScrollbarProps | — |
$attrs | — | AsamScrollbarExpose["$attrs"] | — |
$refs | — | AsamScrollbarExpose["$refs"] | — |
$slots | — | AsamScrollbarSlots | — |
$root | — | 查看完整类型ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null | — |
$parent | — | 查看完整类型ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null | — |
$host | — | Element | null | — |
$emit | — | ((event: "scroll", args_0: { scrollTop: number; scrollLeft: number; }) => void) & ((event: "end-reached", direction: AsamScrollbarDirection) => void) | — |
$el | — | any | — |
$options | — | (AsamScrollbarExpose)["$options"] | — |
$forceUpdate | — | () => void | — |
$nextTick | — | (AsamScrollbarExpose)["$nextTick"] | — |
$watch | — | (AsamScrollbarExpose)["$watch"] | — |
height | — | string | number | — |
tag | — | enum"object" | "form" | "small" | "style" | "title" | "map" | "dialog" | "menu" | "mark" | "data" | "select" | "search" | "button" | "div" | "template" | "input" | "label" | "span" | "a" | "abbr" | "address" | "area" | "article" | "aside" | "audio" | "b" | "base" | "bdi" | "bdo" | "blockquote" | "body" | "br" | "canvas" | "caption" | "cite" | "code" | "col" | "colgroup" | "datalist" | "dd" | "del" | "details" | "dfn" | "dl" | "dt" | "em" | "embed" | "fieldset" | "figcaption" | "figure" | "footer" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "head" | "header" | "hgroup" | "hr" | "html" | "i" | "iframe" | "img" | "ins" | "kbd" | "legend" | "li" | "link" | "main" | "meta" | "meter" | "nav" | "noscript" | "ol" | "optgroup" | "option" | "output" | "p" | "picture" | "pre" | "progress" | "q" | "rp" | "rt" | "ruby" | "s" | "samp" | "script" | "section" | "slot" | "source" | "strong" | "sub" | "summary" | "sup" | "table" | "tbody" | "td" | "textarea" | "tfoot" | "th" | "thead" | "time" | "tr" | "track" | "u" | "ul" | "var" | "video" | "wbr"完整类型:(string & {}) | keyof HTMLElementTagNameMap | — |
tabindex | — | string | number | — |
maxHeight | — | string | number | — |
distance | — | number | — |
wrapStyle | — | (AsamScrollbarExpose)["wrapStyle"] | — |
wrapClass | — | string | false | Record<string, any> | AsamScrollbarProps["wrapClass"][] | null | — |
viewClass | — | string | false | Record<string, any> | AsamScrollbarProps["wrapClass"][] | null | — |
viewStyle | — | (AsamScrollbarExpose)["viewStyle"] | — |
minSize | — | number | — |
ariaLabel | 原生 aria-label属性 | string | undefined | — |
id | 视图标识。 | string | undefined | — |
role | 视图角色。 | string | undefined | — |
onScroll | — | ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined | — |
onEnd-reached | — | ((direction: AsamScrollbarDirection) => any) | undefined | — |
always | 始终显示。 | boolean | undefined | — |
native | 是否使用浏览器原生滚动条。 | boolean | undefined | — |
noresize | 不响应容器尺寸变化;尺寸固定时可启用以优化性能。 | boolean | undefined | — |
ariaOrientation | 原生 aria-orientation 属性。 | enum"undefined" | "horizontal" | "vertical"完整类型:"undefined" | "horizontal" | "vertical" | undefined | — |
wrapRef | 滚动容器实例引用。 | HTMLDivElement | undefined | — |
update | — | () => void | — |
scrollTo | — | { (xCord: number, yCord?: number): void; (options: ScrollToOptions): void; } | — |
setScrollTop | — | (value: number) => void | — |
setScrollLeft | — | (value: number) => void | — |
handleScroll | — | () => void | — |
$route | 当前规范化路由位置,详见 RouteLocationNormalizedLoaded。 | AsamScrollbarExpose["$route"] | — |
$router | 应用使用的 Router 实例。 | AsamScrollbarExpose["$router"] | — |
类型 AsamScrollbarInstance
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
$ | — | AsamScrollbarExpose["$"] | — |
$data | — | AsamTableColumnExpose | — |
$props | — | AsamScrollbarProps | — |
$attrs | — | AsamScrollbarExpose["$attrs"] | — |
$refs | — | AsamScrollbarExpose["$refs"] | — |
$slots | — | AsamScrollbarSlots | — |
$root | — | 查看完整类型ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null | — |
$parent | — | 查看完整类型ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null | — |
$host | — | Element | null | — |
$emit | — | ((event: "scroll", args_0: { scrollTop: number; scrollLeft: number; }) => void) & ((event: "end-reached", direction: AsamScrollbarDirection) => void) | — |
$el | — | any | — |
$options | — | (AsamScrollbarInstance)["$options"] | — |
$forceUpdate | — | () => void | — |
$nextTick | — | (AsamScrollbarInstance)["$nextTick"] | — |
$watch | — | (AsamScrollbarInstance)["$watch"] | — |
height | — | string | number | — |
tag | — | enum"object" | "form" | "small" | "style" | "title" | "map" | "dialog" | "menu" | "mark" | "data" | "select" | "search" | "button" | "div" | "template" | "input" | "label" | "span" | "a" | "abbr" | "address" | "area" | "article" | "aside" | "audio" | "b" | "base" | "bdi" | "bdo" | "blockquote" | "body" | "br" | "canvas" | "caption" | "cite" | "code" | "col" | "colgroup" | "datalist" | "dd" | "del" | "details" | "dfn" | "dl" | "dt" | "em" | "embed" | "fieldset" | "figcaption" | "figure" | "footer" | "h1" | "h2" | "h3" | "h4" | "h5" | "h6" | "head" | "header" | "hgroup" | "hr" | "html" | "i" | "iframe" | "img" | "ins" | "kbd" | "legend" | "li" | "link" | "main" | "meta" | "meter" | "nav" | "noscript" | "ol" | "optgroup" | "option" | "output" | "p" | "picture" | "pre" | "progress" | "q" | "rp" | "rt" | "ruby" | "s" | "samp" | "script" | "section" | "slot" | "source" | "strong" | "sub" | "summary" | "sup" | "table" | "tbody" | "td" | "textarea" | "tfoot" | "th" | "thead" | "time" | "tr" | "track" | "u" | "ul" | "var" | "video" | "wbr"完整类型:(string & {}) | keyof HTMLElementTagNameMap | — |
tabindex | — | string | number | — |
maxHeight | — | string | number | — |
distance | — | number | — |
wrapStyle | — | (AsamScrollbarInstance)["wrapStyle"] | — |
wrapClass | — | string | false | Record<string, any> | AsamScrollbarProps["wrapClass"][] | null | — |
viewClass | — | string | false | Record<string, any> | AsamScrollbarProps["wrapClass"][] | null | — |
viewStyle | — | (AsamScrollbarInstance)["viewStyle"] | — |
minSize | — | number | — |
ariaLabel | 原生 aria-label属性 | string | undefined | — |
id | 视图标识。 | string | undefined | — |
role | 视图角色。 | string | undefined | — |
onScroll | — | ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined | — |
onEnd-reached | — | ((direction: AsamScrollbarDirection) => any) | undefined | — |
always | 始终显示。 | boolean | undefined | — |
native | 是否使用浏览器原生滚动条。 | boolean | undefined | — |
noresize | 不响应容器尺寸变化;尺寸固定时可启用以优化性能。 | boolean | undefined | — |
ariaOrientation | 原生 aria-orientation 属性。 | enum"undefined" | "horizontal" | "vertical"完整类型:"undefined" | "horizontal" | "vertical" | undefined | — |
wrapRef | 滚动容器实例引用。 | HTMLDivElement | undefined | — |
update | — | () => void | — |
scrollTo | — | { (xCord: number, yCord?: number): void; (options: ScrollToOptions): void; } | — |
setScrollTop | — | (value: number) => void | — |
setScrollLeft | — | (value: number) => void | — |
handleScroll | — | () => void | — |
$route | 当前规范化路由位置,详见 RouteLocationNormalizedLoaded。 | AsamScrollbarExpose["$route"] | — |
$router | 应用使用的 Router 实例。 | AsamScrollbarExpose["$router"] | — |
插槽 AsamScrollbarSlots
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
default | — | (AsamScrollbarSlots)["default"] | — |
类型 AsamScrollbarContext
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
scrollbarElement | — | HTMLDivElement | undefined | — |
wrapElement | — | HTMLDivElement | undefined | — |
类型 AsamScrollbarDirection
事件 AsamScrollbarEmits
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
end-reached | — | (direction: AsamScrollbarDirection) => boolean | — |
scroll | — | ({ scrollTop, scrollLeft }: { scrollTop: number; scrollLeft: number; }) => boolean | — |
类型 AsamScrollbarPropsPublic
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
ariaLabel | — | string | undefined | — |
id | — | string | undefined | — |
role | — | string | undefined | — |
tabindex | — | (AsamScrollbarPropsPublic)["tabindex"] | — |
height | — | (AsamScrollbarPropsPublic)["height"] | — |
maxHeight | — | (AsamScrollbarPropsPublic)["maxHeight"] | — |
always | — | boolean | undefined | — |
tag | — | string | undefined | — |
distance | — | number | undefined | — |
native | — | boolean | undefined | — |
wrapStyle | — | (AsamScrollbarPropsPublic)["wrapStyle"] | — |
wrapClass | — | AsamScrollbarProps["wrapClass"] | — |
viewClass | — | AsamScrollbarProps["wrapClass"] | — |
viewStyle | — | (AsamScrollbarPropsPublic)["viewStyle"] | — |
noresize | — | boolean | undefined | — |
minSize | — | number | undefined | — |
ariaOrientation | — | string | undefined | — |
类型 AsamScrollbarThumbInstance
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
$ | — | AsamScrollbarExpose["$"] | — |
$data | — | AsamTableColumnExpose | — |
$props | — | 查看完整类型{ readonly vertical?: boolean | undefined; readonly size?: string | undefined; readonly move?: number | undefined; readonly ratio: number; readonly always?: boolean | undefined; } & VNodeProps & AllowedComponentProps & ComponentCustomProps | — |
$attrs | — | AsamScrollbarExpose["$attrs"] | — |
$refs | — | AsamScrollbarExpose["$refs"] | — |
$slots | — | AsamAvatarGroupSlots | — |
$root | — | 查看完整类型ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null | — |
$parent | — | 查看完整类型ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null | — |
$host | — | Element | null | — |
$emit | — | (event: string, ...args: any[]) => void | — |
$el | — | any | — |
$options | — | (AsamScrollbarThumbInstance)["$options"] | — |
$forceUpdate | — | () => void | — |
$nextTick | — | (AsamScrollbarThumbInstance)["$nextTick"] | — |
$watch | — | (AsamScrollbarThumbInstance)["$watch"] | — |
size | — | string | undefined | — |
vertical | — | boolean | undefined | — |
always | — | boolean | undefined | — |
ratio | — | number | — |
move | — | number | undefined | — |
$route | 当前规范化路由位置,详见 RouteLocationNormalizedLoaded。 | AsamScrollbarExpose["$route"] | — |
$router | 应用使用的 Router 实例。 | AsamScrollbarExpose["$router"] | — |
类型 AsamScrollbarThumbProps
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
vertical | — | boolean | undefined | — |
size | — | string | undefined | — |
move | — | number | undefined | — |
ratio | — | number | — |
always | — | boolean | undefined | — |
类型 AsamScrollbarThumbPropsPublic
| 属性名 | 说明 | 类型 | 默认值 |
|---|---|---|---|
ratio | — | number | — |
size | — | string | undefined | — |
vertical | — | boolean | undefined | — |
always | — | boolean | undefined | — |
move | — | number | undefined | — |
用法与契约补充说明 ​
契约与组合 ​
height 提供固定视窗,maxHeight 保持内容较小时自然高度。横向内容比视窗宽时可水平滚动;always 持续显示滚动条,native 切换浏览器滚动条,noresize 用于宿主自行触发 update 的情况。wrapStyle / wrapClass、viewStyle / viewClass、tag、minSize 和 tabindex 保留本入口公开契约。scroll 接收 scrollTop / scrollLeft,end-reached 按 distance 返回 top / bottom / left / right。
契约与组合 ​
公开 ref 支持 scrollTo、setScrollTop、setScrollLeft、update、handleScroll 与 wrapRef。内容变化后可 await nextTick 再 update,卸载释放 resize 与滚动监听。滚动条尺寸和颜色消费 ASAM tokens,容器高度按实际内容需要设置。
关联组件
参数与事件补充说明
公开绑定参数,包含具备类型的事件监听器;默认值由运行时定义提供。
参数与事件说明
distance
必填:否;声明来源:上游声明。
默认值与来源
0(声明注释;上游声明)固定上游文档默认:0(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:0(2.14.7;源码事实,未作为 ASAM 运行实测)
height
必填:否;声明来源:上游声明。
默认值与来源
''(声明注释;上游声明)固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
maxHeight
必填:否;声明来源:上游声明。
默认值与来源
''(声明注释;上游声明)固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
native
必填:否;声明来源:上游声明。
native 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
默认值与来源
false(隐式 Boolean 默认;已安装组件)固定上游文档默认:false(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
wrapStyle
必填:否;声明来源:上游声明。
wrapStyle 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
默认值与来源
''(声明注释;上游声明)固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
wrapClass
必填:否;声明来源:上游声明。
wrapClass 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
默认值与来源
''(声明注释;上游声明)固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
viewClass
必填:否;声明来源:上游声明。
viewClass 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
默认值与来源
''(声明注释;上游声明)固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
viewStyle
必填:否;声明来源:上游声明。
viewStyle 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
默认值与来源
''(声明注释;上游声明)固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
noresize
必填:否;声明来源:上游声明。
noresize 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
默认值与来源
false(隐式 Boolean 默认;已安装组件)固定上游文档默认:false(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
tag
必填:否;声明来源:上游声明。
tag 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:"object" / "form" / "small" / "style" / "title" / "map" / "dialog" / "menu" / "mark" / "data" / "select" / "search" / "button" / "div" / "template" / "input" / "label" / "span" / "a" / "abbr" / "address" / "area" / "article" / "aside" / "audio" / "b" / "base" / "bdi" / "bdo" / "blockquote" / "body" / "br" / "canvas" / "caption" / "cite" / "code" / "col" / "colgroup" / "datalist" / "dd" / "del" / "details" / "dfn" / "dl" / "dt" / "em" / "embed" / "fieldset" / "figcaption" / "figure" / "footer" / "h1" / "h2" / "h3" / "h4" / "h5" / "h6" / "head" / "header" / "hgroup" / "hr" / "html" / "i" / "iframe" / "img" / "ins" / "kbd" / "legend" / "li" / "link" / "main" / "meta" / "meter" / "nav" / "noscript" / "ol" / "optgroup" / "option" / "output" / "p" / "picture" / "pre" / "progress" / "q" / "rp" / "rt" / "ruby" / "s" / "samp" / "script" / "section" / "slot" / "source" / "strong" / "sub" / "summary" / "sup" / "table" / "tbody" / "td" / "textarea" / "tfoot" / "th" / "thead" / "time" / "tr" / "track" / "u" / "ul" / "var" / "video" / "wbr"
默认值与来源
'div'(声明注释;上游声明)固定上游文档默认:div(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:'div'(2.14.7;源码事实,未作为 ASAM 运行实测)
always
必填:否;声明来源:上游声明。
always 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
默认值与来源
false(隐式 Boolean 默认;已安装组件)固定上游文档默认:false(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
minSize
必填:否;声明来源:上游声明。
默认值与来源
20(声明注释;上游声明)固定上游文档默认:20(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:20(2.14.7;源码事实,未作为 ASAM 运行实测)
tabindex
必填:否;声明来源:上游声明。
默认值与来源
undefined(声明注释;上游声明)固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
固定上游源码默认表达式:undefined(2.14.7;源码事实,未作为 ASAM 运行实测)
id
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
role
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
ariaLabel
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
ariaOrientation
必填:否;声明来源:上游声明。
ariaOrientation 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:"undefined" / "horizontal" / "vertical"
默认值与来源
未知 / 未声明固定上游文档默认:未声明(2.14.7;文档事实,实际默认以 ASAM 源码 / 安装包为准)
onScroll
必填:否;声明来源:上游声明。
onScroll 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(args_0: { scrollTop: number; scrollLeft: number; }): any
onEnd-reached
必填:否;声明来源:上游声明。
onEnd-reached 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(direction: AsamScrollbarDirection): any
key
必填:否;声明来源:依赖声明。
ref
必填:否;声明来源:依赖声明。
ref 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(ref: Element | ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null, refs: Record<string, any>): void
ref.value:any— 依赖声明ref.__@RefSymbol@8854:true— 依赖声明仅用于区分类型:保留在公开声明中,通过私有 Symbol 避免出现在编辑器自动补全中。
枚举:
true
ref_for
必填:否;声明来源:依赖声明。
ref_for 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
ref_key
必填:否;声明来源:依赖声明。
onVnodeBeforeMount
必填:否;声明来源:依赖声明。
onVnodeBeforeMount 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(vnode: VNode<RendererNode, RendererElement, { [key: string]: any; }>): void
onVnodeMounted
必填:否;声明来源:依赖声明。
onVnodeMounted 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(vnode: VNode<RendererNode, RendererElement, { [key: string]: any; }>): void
onVnodeBeforeUpdate
必填:否;声明来源:依赖声明。
onVnodeBeforeUpdate 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(vnode: VNode<RendererNode, RendererElement, { [key: string]: any; }>, oldVNode: VNode<RendererNode, RendererElement, { [key: string]: any; }>): void
onVnodeUpdated
必填:否;声明来源:依赖声明。
onVnodeUpdated 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(vnode: VNode<RendererNode, RendererElement, { [key: string]: any; }>, oldVNode: VNode<RendererNode, RendererElement, { [key: string]: any; }>): void
onVnodeBeforeUnmount
必填:否;声明来源:依赖声明。
onVnodeBeforeUnmount 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(vnode: VNode<RendererNode, RendererElement, { [key: string]: any; }>): void
onVnodeUnmounted
必填:否;声明来源:依赖声明。
onVnodeUnmounted 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(vnode: VNode<RendererNode, RendererElement, { [key: string]: any; }>): void
class
必填:否;声明来源:依赖声明。
style
必填:否;声明来源:依赖声明。
AsamScrollbarProps 公开类型视图
import type { VNodeRef, ComponentPublicInstance, ComponentOptionsBase, ComponentProvideOptions, VNode, RendererNode, RendererElement } from 'vue';
import type { AsamScrollbarProps, AsamScrollbarDirection, AsamScrollbarExpose } from '@asam-ui/ui';
type PublicMember<T, K extends PropertyKey> = T extends unknown ? K extends keyof T ? T[K] : never : never;
// AsamScrollbarProps
type PublicContract = {
readonly "distance"?: number | undefined;
readonly "height"?: string | number | undefined;
readonly "maxHeight"?: string | number | undefined;
readonly "native"?: boolean | undefined;
readonly "wrapStyle"?: (AsamScrollbarProps)["wrapStyle"];
readonly "wrapClass"?: AsamScrollbarProps["wrapClass"];
readonly "viewClass"?: AsamScrollbarProps["wrapClass"];
readonly "viewStyle"?: (AsamScrollbarProps)["viewStyle"];
readonly "noresize"?: boolean | undefined;
readonly "tag"?: (string & {}) | keyof HTMLElementTagNameMap | undefined;
readonly "always"?: boolean | undefined;
readonly "minSize"?: number | undefined;
readonly "tabindex"?: string | number | undefined;
readonly "id"?: string | undefined;
readonly "role"?: string | undefined;
readonly "ariaLabel"?: string | undefined;
readonly "ariaOrientation"?: "undefined" | "horizontal" | "vertical" | undefined;
readonly "onScroll"?: ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined;
readonly "onEnd-reached"?: ((direction: AsamScrollbarDirection) => any) | undefined;
"key"?: PropertyKey | undefined;
"ref"?: VNodeRef | undefined;
"ref_for"?: boolean | undefined;
"ref_key"?: string | undefined;
"onVnodeBeforeMount"?: (AsamScrollbarProps)["onVnodeBeforeMount"];
"onVnodeMounted"?: (AsamScrollbarProps)["onVnodeMounted"];
"onVnodeBeforeUpdate"?: (AsamScrollbarProps)["onVnodeBeforeUpdate"];
"onVnodeUpdated"?: (AsamScrollbarProps)["onVnodeUpdated"];
"onVnodeBeforeUnmount"?: (AsamScrollbarProps)["onVnodeBeforeUnmount"];
"onVnodeUnmounted"?: (AsamScrollbarProps)["onVnodeUnmounted"];
"class"?: unknown;
"style"?: unknown;
};
完整的上游实例,包含全部公开方法与响应式状态。
参数与事件说明
$
必填:是;声明来源:依赖声明。
$ 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$data
必填:是;声明来源:依赖声明。
$props
必填:是;声明来源:依赖声明。
$attrs
必填:是;声明来源:依赖声明。
$attrs 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$refs
必填:是;声明来源:依赖声明。
$refs 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$slots
必填:是;声明来源:依赖声明。
$root
必填:是;声明来源:依赖声明。
$parent
必填:是;声明来源:依赖声明。
$host
必填:是;声明来源:依赖声明。
$host 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
$emit
必填:是;声明来源:依赖声明。
$emit 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(event: "scroll", ...args: [args_0: { scrollTop: number; scrollLeft: number; }]): void
事件参数:(event: "end-reached", ...args: [direction: AsamScrollbarDirection]): void
$el
必填:是;声明来源:依赖声明。
$options
必填:是;声明来源:依赖声明。
$forceUpdate
必填:是;声明来源:依赖声明。
$forceUpdate 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): void
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$nextTick
必填:是;声明来源:依赖声明。
$nextTick 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): Promise<void>
事件参数:<T, R>(this: T, fn: (this: T) => R | Promise<R>): Promise<R>
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$watch
必填:是;声明来源:依赖声明。
$watch 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:<T extends string | ((...args: any) => any)>(source: T, cb: Parameters<Extract<NonNullable<(AsamScrollbarExpose)["$watch"]>, (...args: never[]) => unknown>>[1], options?: WatchOptions<boolean> | undefined): WatchStopHandle
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
height
必填:是;声明来源:上游声明。
tag
必填:是;声明来源:上游声明。
tag 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:"object" / "form" / "small" / "style" / "title" / "map" / "dialog" / "menu" / "mark" / "data" / "select" / "search" / "button" / "div" / "template" / "input" / "label" / "span" / "a" / "abbr" / "address" / "area" / "article" / "aside" / "audio" / "b" / "base" / "bdi" / "bdo" / "blockquote" / "body" / "br" / "canvas" / "caption" / "cite" / "code" / "col" / "colgroup" / "datalist" / "dd" / "del" / "details" / "dfn" / "dl" / "dt" / "em" / "embed" / "fieldset" / "figcaption" / "figure" / "footer" / "h1" / "h2" / "h3" / "h4" / "h5" / "h6" / "head" / "header" / "hgroup" / "hr" / "html" / "i" / "iframe" / "img" / "ins" / "kbd" / "legend" / "li" / "link" / "main" / "meta" / "meter" / "nav" / "noscript" / "ol" / "optgroup" / "option" / "output" / "p" / "picture" / "pre" / "progress" / "q" / "rp" / "rt" / "ruby" / "s" / "samp" / "script" / "section" / "slot" / "source" / "strong" / "sub" / "summary" / "sup" / "table" / "tbody" / "td" / "textarea" / "tfoot" / "th" / "thead" / "time" / "tr" / "track" / "u" / "ul" / "var" / "video" / "wbr"
tabindex
必填:是;声明来源:上游声明。
maxHeight
必填:是;声明来源:上游声明。
distance
必填:是;声明来源:上游声明。
wrapStyle
必填:是;声明来源:上游声明。
wrapStyle 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
wrapClass
必填:是;声明来源:上游声明。
wrapClass 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
viewClass
必填:是;声明来源:上游声明。
viewClass 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
viewStyle
必填:是;声明来源:上游声明。
viewStyle 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
minSize
必填:是;声明来源:上游声明。
ariaLabel
必填:否;声明来源:上游声明。
id
必填:否;声明来源:上游声明。
role
必填:否;声明来源:上游声明。
onScroll
必填:否;声明来源:上游声明。
onScroll 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(args_0: { scrollTop: number; scrollLeft: number; }): any
onEnd-reached
必填:否;声明来源:上游声明。
onEnd-reached 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(direction: AsamScrollbarDirection): any
always
必填:否;声明来源:上游声明。
always 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
native
必填:否;声明来源:上游声明。
native 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
noresize
必填:否;声明来源:上游声明。
noresize 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
ariaOrientation
必填:否;声明来源:上游声明。
ariaOrientation 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:"undefined" / "horizontal" / "vertical"
wrapRef
必填:是;声明来源:上游声明。
wrapRef 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
update
必填:是;声明来源:上游声明。
update 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): void
scrollTo
必填:是;声明来源:上游声明。
scrollTo 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(xCord: number, yCord?: number | undefined): void
事件参数:(options: ScrollToOptions): void
setScrollTop
必填:是;声明来源:上游声明。
setScrollTop 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(value: number): void
setScrollLeft
必填:是;声明来源:上游声明。
setScrollLeft 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(value: number): void
handleScroll
必填:是;声明来源:上游声明。
handleScroll 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): void
$route
必填:是;声明来源:依赖声明。
$route 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
$route.matched:(NonNullable<AsamScrollbarExpose["$route"]>)["matched"]— 依赖声明仅包含普通组件的 RouteLocationMatched 数组;懒加载组件已解析并替换 components 中的值,可直接展示路由,不包含重定向记录。此属性不可枚举。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$route.name:(NonNullable<AsamScrollbarExpose["$route"]>)["name"]— 依赖声明匹配路由记录的名称。
$route.fullPath:string— 依赖声明包含 search 和 hash 的完整位置字符串,使用百分号编码。
$route.query:(NonNullable<AsamScrollbarExpose["$route"]>)["query"]— 依赖声明当前位置 search 属性的对象表示。
$route.hash:string— 依赖声明当前位置的哈希片段;存在时以 # 开头。
$route.redirectedFrom:(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]— 依赖声明最终到达当前位置之前,最初尝试访问的位置。
$route.redirectedFrom.matched:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "matched">— 依赖声明包含添加路由时原始组件的 RouteRecord 数组,也可能包含重定向记录,不能直接用于展示。此属性不可枚举。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$route.redirectedFrom.fullPath:string— 依赖声明包含 search 和 hash 的完整位置字符串,使用百分号编码。
$route.redirectedFrom.query:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "query">— 依赖声明当前位置 search 属性的对象表示。
$route.redirectedFrom.hash:string— 依赖声明当前位置的哈希片段;存在时以 # 开头。
$route.redirectedFrom.redirectedFrom:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "redirectedFrom">— 依赖声明最终到达当前位置之前,最初尝试访问的位置。
嵌套展开边界:递归引用;完整类型见公开类型视图。
$route.redirectedFrom.name:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "name">— 依赖声明匹配路由记录的名称。
$route.redirectedFrom.meta:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "meta">— 依赖声明全部匹配路由记录合并后的 meta 属性。
$route.redirectedFrom.params:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "params">— 依赖声明从 path 提取并解码后的参数对象。
$route.redirectedFrom.path:string— 依赖声明URL 中经过百分号编码的路径部分。
$route.redirectedFrom.replace:boolean | undefined— 依赖声明替换当前历史记录,而不是添加新记录。
枚举:
false/true$route.redirectedFrom.force:boolean | undefined— 依赖声明即使目标与当前位置相同,也触发导航;除非传入 replace: true,否则会添加一条历史记录。
枚举:
false/true$route.redirectedFrom.state:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "state">— 依赖声明通过 History API 保存的状态;不能包含响应式值,也不允许 Symbol 等部分值。详情参见 https://developer.mozilla.org/zh-CN/docs/Web/API/History/state。
$route.meta:(NonNullable<AsamScrollbarExpose["$route"]>)["meta"]— 依赖声明全部匹配路由记录合并后的 meta 属性。
$route.params:(NonNullable<AsamScrollbarExpose["$route"]>)["params"]— 依赖声明从 path 提取并解码后的参数对象。
$route.path:string— 依赖声明URL 中经过百分号编码的路径部分。
$router
必填:是;声明来源:依赖声明。
$router 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
$router.options:(NonNullable<AsamScrollbarExpose["$router"]>)["options"]— 依赖声明创建路由器时传入的原始配置对象。
$router.options.routes:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["routes"]— 依赖声明需要添加到路由器的初始路由列表。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$router.options.history:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]— 依赖声明路由器使用的历史记录实现。通常使用 createWebHistory,并配置服务器回退;createWebHashHistory 无需服务器配置,但搜索引擎无法处理其哈希路由,影响搜索优化。
$router.options.history.base:string— 依赖声明添加到每个 URL 前的基础路径;例如 base 为 /sub-folder 时,可将单页应用部署在域名的对应子目录。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.location:string— 依赖声明当前历史记录位置。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.state:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["state"]— 依赖声明当前历史记录状态。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.push:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["push"]— 依赖声明导航到指定位置;使用 HTML5 History 时,通过 history.pushState 实际更新 URL。
事件参数:
(to: string, data?: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["push"]>, (...args: never[]) => unknown>>[1]): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.replace:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["replace"]— 依赖声明与 RouterHistory.push 类似,但调用 history.replaceState,而非 history.pushState。
事件参数:
(to: string, data?: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["replace"]>, (...args: never[]) => unknown>>[1]): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.go:(delta: number, triggerListeners?: boolean) => void— 依赖声明按指定方向遍历历史记录。
事件参数:
(delta: number, triggerListeners?: boolean | undefined): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.listen:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["listen"]— 依赖声明为历史记录实现添加监听器;由浏览器前进、后退等外部导航,或传入 true 的 RouterHistory.back、RouterHistory.forward 触发。
事件参数:
(callback: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["listen"]>, (...args: never[]) => unknown>>[0]): () => void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.createHref:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["createHref"]— 依赖声明生成用于链接元素的对应 href。
事件参数:
(location: string): string嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.destroy:() => void— 依赖声明清除历史记录实现注册的全部事件监听器。
事件参数:
(): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.scrollBehavior:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]— 依赖声明控制页面导航时滚动行为的函数;可返回 Promise 延迟滚动。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>[0], from: AsamScrollbarExpose["$route"], savedPosition: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>[2]): ReturnType<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>$router.options.parseQuery:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["parseQuery"]— 依赖声明自定义查询参数解析函数;与 EXPERIMENTAL_RouterOptions_Base.stringifyQuery 配套。
事件参数:
(search: string): ReturnType<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["parseQuery"]>, (...args: never[]) => unknown>>$router.options.stringifyQuery:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["stringifyQuery"]— 依赖声明自定义查询对象序列化函数;不要添加开头的 ?,与 parseQuery 的解析函数配套。
事件参数:
(query: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["stringifyQuery"]>, (...args: never[]) => unknown>>[0]): string$router.options.linkActiveClass:string | undefined— 依赖声明应用于激活 RouterLink 的默认类名;未指定时使用 router-link-active。
$router.options.linkExactActiveClass:string | undefined— 依赖声明应用于精确激活 RouterLink 的默认类名;未指定时使用 router-link-exact-active。
$router.options.end:boolean | undefined— 依赖声明是否在表达式末尾添加 $,使其匹配到路径结尾。
声明默认:
`true`(注释,实际运行默认以源码/安装包为准)枚举:
false/true$router.options.sensitive:boolean | undefined— 依赖声明使正则表达式区分大小写。
声明默认:
`false`(注释,实际运行默认以源码/安装包为准)枚举:
false/true$router.options.strict:boolean | undefined— 依赖声明是否禁止路径末尾的斜杠。
声明默认:
`false`(注释,实际运行默认以源码/安装包为准)枚举:
false/true
$router.addRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["addRoute"]— 依赖声明向已有路由添加子路由,或向路由器添加新的 RouteRecordRaw 路由记录。
事件参数完整签名见公开类型视图。
事件参数完整签名见公开类型视图。
$router.removeRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["removeRoute"]— 依赖声明按名称移除已有路由。
事件参数:
(name: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["removeRoute"]>, (...args: never[]) => unknown>>[0]): void$router.clearRoutes:() => void— 依赖声明从路由器中删除全部路由。
事件参数:
(): void$router.currentRoute:ShallowRef<AsamScrollbarExpose["$route"]>— 依赖声明当前 RouteLocationNormalized。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$router.listening:boolean— 依赖声明允许关闭历史事件监听,这是用于微前端的底层 API。
枚举:
false/true$router.hasRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["hasRoute"]— 依赖声明检查指定名称的路由是否存在。
事件参数:
(name: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["hasRoute"]>, (...args: never[]) => unknown>>[0]): boolean$router.getRoutes:(NonNullable<AsamScrollbarExpose["$router"]>)["getRoutes"]— 依赖声明获取全部 RouteRecord 路由记录的完整列表。
事件参数:
(): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["getRoutes"]>, (...args: never[]) => unknown>>$router.resolve:(NonNullable<AsamScrollbarExpose["$router"]>)["resolve"]— 依赖声明返回 RouteLocationRaw 的规范化位置,包含带基础路径的 href;默认使用 router.currentRoute 作为 currentLocation,仅在高级场景中覆盖。
事件参数完整签名见公开类型视图。
事件参数完整签名见公开类型视图。
$router.push:(NonNullable<AsamScrollbarExpose["$router"]>)["push"]— 依赖声明通过向历史栈添加记录,以编程方式导航到新 URL。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["push"]>, (...args: never[]) => unknown>>[0]): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["push"]>, (...args: never[]) => unknown>>$router.replace:(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]— 依赖声明通过替换历史栈中的当前记录,以编程方式导航到新 URL。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]>, (...args: never[]) => unknown>>[0]): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]>, (...args: never[]) => unknown>>$router.back:() => void— 依赖声明通过 history.back() 在可用时后退,等价于 router.go(-1)。
事件参数:
(): void$router.forward:() => void— 依赖声明通过 history.forward() 在可用时前进,等价于 router.go(1)。
事件参数:
(): void$router.go:(delta: number) => void— 依赖声明通过调用 history.go() 在历史记录中前进或后退。
事件参数:
(delta: number): void$router.beforeEach:(NonNullable<AsamScrollbarExpose["$router"]>)["beforeEach"]— 依赖声明添加每次导航之前执行的守卫,并返回移除此守卫的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["beforeEach"]>, (...args: never[]) => unknown>>[0]): () => void$router.beforeResolve:(NonNullable<AsamScrollbarExpose["$router"]>)["beforeResolve"]— 依赖声明添加导航确认之前执行的守卫,此时组件已获取且其他导航守卫已通过;返回移除此守卫的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["beforeResolve"]>, (...args: never[]) => unknown>>[0]): () => void$router.afterEach:(NonNullable<AsamScrollbarExpose["$router"]>)["afterEach"]— 依赖声明添加每次导航结束后执行的钩子,并返回移除此钩子的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["afterEach"]>, (...args: never[]) => unknown>>[0]): () => void$router.onError:(NonNullable<AsamScrollbarExpose["$router"]>)["onError"]— 依赖声明添加导航期间未捕获错误的处理函数,涵盖同步和异步异常、守卫返回或传给 next 的错误,以及路由异步组件解析错误。
事件参数:
(handler: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["onError"]>, (...args: never[]) => unknown>>[0]): () => void$router.isReady:() => Promise<void>— 依赖声明返回在初次导航完成后兑现的 Promise,此时关联的异步进入钩子与异步组件均已解析;导航已完成时立即兑现。可用于保持服务端与客户端渲染一致;服务端需手动推入初始位置,客户端从 URL 自动读取。
事件参数:
(): Promise<void>$router.install:(app: App) => void— 依赖声明由 app.use(router) 自动调用,用户不应手动调用;客户端调用时会触发初次导航。
事件参数:
(app: App<any>): void
AsamScrollbarExpose 公开类型视图
import type { ComponentPublicInstance, ComponentOptionsBase, ComponentProvideOptions, Ref, ComponentOptionsMixin, GlobalComponents, GlobalDirectives, WatchOptions, WatchStopHandle, ShallowRef, App } from 'vue';
import type { AsamScrollbarExpose, AsamTableColumnExpose, AsamScrollbarProps, AsamScrollbarSlots, AsamScrollbarDirection } from '@asam-ui/ui';
type PublicMember<T, K extends PropertyKey> = T extends unknown ? K extends keyof T ? T[K] : never : never;
// AsamScrollbarExpose
type PublicContract = {
"$": AsamScrollbarExpose["$"];
"$data": AsamTableColumnExpose;
"$props": AsamScrollbarProps;
"$attrs": AsamScrollbarExpose["$attrs"];
"$refs": AsamScrollbarExpose["$refs"];
"$slots": AsamScrollbarSlots;
"$root": ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null;
"$parent": ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null;
"$host": Element | null;
"$emit": ((event: "scroll", args_0: { scrollTop: number; scrollLeft: number; }) => void) & ((event: "end-reached", direction: AsamScrollbarDirection) => void);
"$el": any;
"$options": (AsamScrollbarExpose)["$options"];
"$forceUpdate": () => void;
"$nextTick": (AsamScrollbarExpose)["$nextTick"];
"$watch": (AsamScrollbarExpose)["$watch"];
readonly "height": string | number;
readonly "tag": (string & {}) | keyof HTMLElementTagNameMap;
readonly "tabindex": string | number;
readonly "maxHeight": string | number;
readonly "distance": number;
readonly "wrapStyle": (AsamScrollbarExpose)["wrapStyle"];
readonly "wrapClass": string | false | Record<string, any> | AsamScrollbarProps["wrapClass"][] | null;
readonly "viewClass": string | false | Record<string, any> | AsamScrollbarProps["wrapClass"][] | null;
readonly "viewStyle": (AsamScrollbarExpose)["viewStyle"];
readonly "minSize": number;
readonly "ariaLabel"?: string | undefined;
readonly "id"?: string | undefined;
readonly "role"?: string | undefined;
readonly "onScroll"?: ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined;
readonly "onEnd-reached"?: ((direction: AsamScrollbarDirection) => any) | undefined;
readonly "always"?: boolean | undefined;
readonly "native"?: boolean | undefined;
readonly "noresize"?: boolean | undefined;
readonly "ariaOrientation"?: "undefined" | "horizontal" | "vertical" | undefined;
"wrapRef": HTMLDivElement | undefined;
"update": () => void;
"scrollTo": { (xCord: number, yCord?: number): void; (options: ScrollToOptions): void; };
"setScrollTop": (value: number) => void;
"setScrollLeft": (value: number) => void;
"handleScroll": () => void;
"$route": AsamScrollbarExpose["$route"];
"$router": AsamScrollbarExpose["$router"];
};
参数与事件说明
$
必填:是;声明来源:依赖声明。
$ 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$data
必填:是;声明来源:依赖声明。
$props
必填:是;声明来源:依赖声明。
$attrs
必填:是;声明来源:依赖声明。
$attrs 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$refs
必填:是;声明来源:依赖声明。
$refs 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$slots
必填:是;声明来源:依赖声明。
$root
必填:是;声明来源:依赖声明。
$parent
必填:是;声明来源:依赖声明。
$host
必填:是;声明来源:依赖声明。
$host 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
$emit
必填:是;声明来源:依赖声明。
$emit 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(event: "scroll", ...args: [args_0: { scrollTop: number; scrollLeft: number; }]): void
事件参数:(event: "end-reached", ...args: [direction: AsamScrollbarDirection]): void
$el
必填:是;声明来源:依赖声明。
$options
必填:是;声明来源:依赖声明。
$forceUpdate
必填:是;声明来源:依赖声明。
$forceUpdate 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): void
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$nextTick
必填:是;声明来源:依赖声明。
$nextTick 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): Promise<void>
事件参数:<T, R>(this: T, fn: (this: T) => R | Promise<R>): Promise<R>
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$watch
必填:是;声明来源:依赖声明。
$watch 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:<T extends string | ((...args: any) => any)>(source: T, cb: Parameters<Extract<NonNullable<(AsamScrollbarInstance)["$watch"]>, (...args: never[]) => unknown>>[1], options?: WatchOptions<boolean> | undefined): WatchStopHandle
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
height
必填:是;声明来源:上游声明。
tag
必填:是;声明来源:上游声明。
tag 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:"object" / "form" / "small" / "style" / "title" / "map" / "dialog" / "menu" / "mark" / "data" / "select" / "search" / "button" / "div" / "template" / "input" / "label" / "span" / "a" / "abbr" / "address" / "area" / "article" / "aside" / "audio" / "b" / "base" / "bdi" / "bdo" / "blockquote" / "body" / "br" / "canvas" / "caption" / "cite" / "code" / "col" / "colgroup" / "datalist" / "dd" / "del" / "details" / "dfn" / "dl" / "dt" / "em" / "embed" / "fieldset" / "figcaption" / "figure" / "footer" / "h1" / "h2" / "h3" / "h4" / "h5" / "h6" / "head" / "header" / "hgroup" / "hr" / "html" / "i" / "iframe" / "img" / "ins" / "kbd" / "legend" / "li" / "link" / "main" / "meta" / "meter" / "nav" / "noscript" / "ol" / "optgroup" / "option" / "output" / "p" / "picture" / "pre" / "progress" / "q" / "rp" / "rt" / "ruby" / "s" / "samp" / "script" / "section" / "slot" / "source" / "strong" / "sub" / "summary" / "sup" / "table" / "tbody" / "td" / "textarea" / "tfoot" / "th" / "thead" / "time" / "tr" / "track" / "u" / "ul" / "var" / "video" / "wbr"
tabindex
必填:是;声明来源:上游声明。
maxHeight
必填:是;声明来源:上游声明。
distance
必填:是;声明来源:上游声明。
wrapStyle
必填:是;声明来源:上游声明。
wrapStyle 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
wrapClass
必填:是;声明来源:上游声明。
wrapClass 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
viewClass
必填:是;声明来源:上游声明。
viewClass 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
viewStyle
必填:是;声明来源:上游声明。
viewStyle 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
minSize
必填:是;声明来源:上游声明。
ariaLabel
必填:否;声明来源:上游声明。
id
必填:否;声明来源:上游声明。
role
必填:否;声明来源:上游声明。
onScroll
必填:否;声明来源:上游声明。
onScroll 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(args_0: { scrollTop: number; scrollLeft: number; }): any
onEnd-reached
必填:否;声明来源:上游声明。
onEnd-reached 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(direction: AsamScrollbarDirection): any
always
必填:否;声明来源:上游声明。
always 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
native
必填:否;声明来源:上游声明。
native 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
noresize
必填:否;声明来源:上游声明。
noresize 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
ariaOrientation
必填:否;声明来源:上游声明。
ariaOrientation 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:"undefined" / "horizontal" / "vertical"
wrapRef
必填:是;声明来源:上游声明。
wrapRef 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
update
必填:是;声明来源:上游声明。
update 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): void
scrollTo
必填:是;声明来源:上游声明。
scrollTo 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(xCord: number, yCord?: number | undefined): void
事件参数:(options: ScrollToOptions): void
setScrollTop
必填:是;声明来源:上游声明。
setScrollTop 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(value: number): void
setScrollLeft
必填:是;声明来源:上游声明。
setScrollLeft 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(value: number): void
handleScroll
必填:是;声明来源:上游声明。
handleScroll 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): void
$route
必填:是;声明来源:依赖声明。
$route 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
$route.matched:(NonNullable<AsamScrollbarExpose["$route"]>)["matched"]— 依赖声明仅包含普通组件的 RouteLocationMatched 数组;懒加载组件已解析并替换 components 中的值,可直接展示路由,不包含重定向记录。此属性不可枚举。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$route.name:(NonNullable<AsamScrollbarExpose["$route"]>)["name"]— 依赖声明匹配路由记录的名称。
$route.fullPath:string— 依赖声明包含 search 和 hash 的完整位置字符串,使用百分号编码。
$route.query:(NonNullable<AsamScrollbarExpose["$route"]>)["query"]— 依赖声明当前位置 search 属性的对象表示。
$route.hash:string— 依赖声明当前位置的哈希片段;存在时以 # 开头。
$route.redirectedFrom:(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]— 依赖声明最终到达当前位置之前,最初尝试访问的位置。
$route.redirectedFrom.matched:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "matched">— 依赖声明包含添加路由时原始组件的 RouteRecord 数组,也可能包含重定向记录,不能直接用于展示。此属性不可枚举。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$route.redirectedFrom.fullPath:string— 依赖声明包含 search 和 hash 的完整位置字符串,使用百分号编码。
$route.redirectedFrom.query:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "query">— 依赖声明当前位置 search 属性的对象表示。
$route.redirectedFrom.hash:string— 依赖声明当前位置的哈希片段;存在时以 # 开头。
$route.redirectedFrom.redirectedFrom:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "redirectedFrom">— 依赖声明最终到达当前位置之前,最初尝试访问的位置。
嵌套展开边界:递归引用;完整类型见公开类型视图。
$route.redirectedFrom.name:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "name">— 依赖声明匹配路由记录的名称。
$route.redirectedFrom.meta:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "meta">— 依赖声明全部匹配路由记录合并后的 meta 属性。
$route.redirectedFrom.params:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "params">— 依赖声明从 path 提取并解码后的参数对象。
$route.redirectedFrom.path:string— 依赖声明URL 中经过百分号编码的路径部分。
$route.redirectedFrom.replace:boolean | undefined— 依赖声明替换当前历史记录,而不是添加新记录。
枚举:
false/true$route.redirectedFrom.force:boolean | undefined— 依赖声明即使目标与当前位置相同,也触发导航;除非传入 replace: true,否则会添加一条历史记录。
枚举:
false/true$route.redirectedFrom.state:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "state">— 依赖声明通过 History API 保存的状态;不能包含响应式值,也不允许 Symbol 等部分值。详情参见 https://developer.mozilla.org/zh-CN/docs/Web/API/History/state。
$route.meta:(NonNullable<AsamScrollbarExpose["$route"]>)["meta"]— 依赖声明全部匹配路由记录合并后的 meta 属性。
$route.params:(NonNullable<AsamScrollbarExpose["$route"]>)["params"]— 依赖声明从 path 提取并解码后的参数对象。
$route.path:string— 依赖声明URL 中经过百分号编码的路径部分。
$router
必填:是;声明来源:依赖声明。
$router 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
$router.options:(NonNullable<AsamScrollbarExpose["$router"]>)["options"]— 依赖声明创建路由器时传入的原始配置对象。
$router.options.routes:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["routes"]— 依赖声明需要添加到路由器的初始路由列表。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$router.options.history:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]— 依赖声明路由器使用的历史记录实现。通常使用 createWebHistory,并配置服务器回退;createWebHashHistory 无需服务器配置,但搜索引擎无法处理其哈希路由,影响搜索优化。
$router.options.history.base:string— 依赖声明添加到每个 URL 前的基础路径;例如 base 为 /sub-folder 时,可将单页应用部署在域名的对应子目录。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.location:string— 依赖声明当前历史记录位置。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.state:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["state"]— 依赖声明当前历史记录状态。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.push:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["push"]— 依赖声明导航到指定位置;使用 HTML5 History 时,通过 history.pushState 实际更新 URL。
事件参数:
(to: string, data?: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["push"]>, (...args: never[]) => unknown>>[1]): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.replace:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["replace"]— 依赖声明与 RouterHistory.push 类似,但调用 history.replaceState,而非 history.pushState。
事件参数:
(to: string, data?: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["replace"]>, (...args: never[]) => unknown>>[1]): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.go:(delta: number, triggerListeners?: boolean) => void— 依赖声明按指定方向遍历历史记录。
事件参数:
(delta: number, triggerListeners?: boolean | undefined): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.listen:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["listen"]— 依赖声明为历史记录实现添加监听器;由浏览器前进、后退等外部导航,或传入 true 的 RouterHistory.back、RouterHistory.forward 触发。
事件参数:
(callback: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["listen"]>, (...args: never[]) => unknown>>[0]): () => void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.createHref:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["createHref"]— 依赖声明生成用于链接元素的对应 href。
事件参数:
(location: string): string嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.destroy:() => void— 依赖声明清除历史记录实现注册的全部事件监听器。
事件参数:
(): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.scrollBehavior:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]— 依赖声明控制页面导航时滚动行为的函数;可返回 Promise 延迟滚动。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>[0], from: AsamScrollbarExpose["$route"], savedPosition: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>[2]): ReturnType<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>$router.options.parseQuery:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["parseQuery"]— 依赖声明自定义查询参数解析函数;与 EXPERIMENTAL_RouterOptions_Base.stringifyQuery 配套。
事件参数:
(search: string): ReturnType<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["parseQuery"]>, (...args: never[]) => unknown>>$router.options.stringifyQuery:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["stringifyQuery"]— 依赖声明自定义查询对象序列化函数;不要添加开头的 ?,与 parseQuery 的解析函数配套。
事件参数:
(query: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["stringifyQuery"]>, (...args: never[]) => unknown>>[0]): string$router.options.linkActiveClass:string | undefined— 依赖声明应用于激活 RouterLink 的默认类名;未指定时使用 router-link-active。
$router.options.linkExactActiveClass:string | undefined— 依赖声明应用于精确激活 RouterLink 的默认类名;未指定时使用 router-link-exact-active。
$router.options.end:boolean | undefined— 依赖声明是否在表达式末尾添加 $,使其匹配到路径结尾。
声明默认:
`true`(注释,实际运行默认以源码/安装包为准)枚举:
false/true$router.options.sensitive:boolean | undefined— 依赖声明使正则表达式区分大小写。
声明默认:
`false`(注释,实际运行默认以源码/安装包为准)枚举:
false/true$router.options.strict:boolean | undefined— 依赖声明是否禁止路径末尾的斜杠。
声明默认:
`false`(注释,实际运行默认以源码/安装包为准)枚举:
false/true
$router.addRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["addRoute"]— 依赖声明向已有路由添加子路由,或向路由器添加新的 RouteRecordRaw 路由记录。
事件参数完整签名见公开类型视图。
事件参数完整签名见公开类型视图。
$router.removeRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["removeRoute"]— 依赖声明按名称移除已有路由。
事件参数:
(name: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["removeRoute"]>, (...args: never[]) => unknown>>[0]): void$router.clearRoutes:() => void— 依赖声明从路由器中删除全部路由。
事件参数:
(): void$router.currentRoute:ShallowRef<AsamScrollbarExpose["$route"]>— 依赖声明当前 RouteLocationNormalized。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$router.listening:boolean— 依赖声明允许关闭历史事件监听,这是用于微前端的底层 API。
枚举:
false/true$router.hasRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["hasRoute"]— 依赖声明检查指定名称的路由是否存在。
事件参数:
(name: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["hasRoute"]>, (...args: never[]) => unknown>>[0]): boolean$router.getRoutes:(NonNullable<AsamScrollbarExpose["$router"]>)["getRoutes"]— 依赖声明获取全部 RouteRecord 路由记录的完整列表。
事件参数:
(): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["getRoutes"]>, (...args: never[]) => unknown>>$router.resolve:(NonNullable<AsamScrollbarExpose["$router"]>)["resolve"]— 依赖声明返回 RouteLocationRaw 的规范化位置,包含带基础路径的 href;默认使用 router.currentRoute 作为 currentLocation,仅在高级场景中覆盖。
事件参数完整签名见公开类型视图。
事件参数完整签名见公开类型视图。
$router.push:(NonNullable<AsamScrollbarExpose["$router"]>)["push"]— 依赖声明通过向历史栈添加记录,以编程方式导航到新 URL。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["push"]>, (...args: never[]) => unknown>>[0]): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["push"]>, (...args: never[]) => unknown>>$router.replace:(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]— 依赖声明通过替换历史栈中的当前记录,以编程方式导航到新 URL。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]>, (...args: never[]) => unknown>>[0]): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]>, (...args: never[]) => unknown>>$router.back:() => void— 依赖声明通过 history.back() 在可用时后退,等价于 router.go(-1)。
事件参数:
(): void$router.forward:() => void— 依赖声明通过 history.forward() 在可用时前进,等价于 router.go(1)。
事件参数:
(): void$router.go:(delta: number) => void— 依赖声明通过调用 history.go() 在历史记录中前进或后退。
事件参数:
(delta: number): void$router.beforeEach:(NonNullable<AsamScrollbarExpose["$router"]>)["beforeEach"]— 依赖声明添加每次导航之前执行的守卫,并返回移除此守卫的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["beforeEach"]>, (...args: never[]) => unknown>>[0]): () => void$router.beforeResolve:(NonNullable<AsamScrollbarExpose["$router"]>)["beforeResolve"]— 依赖声明添加导航确认之前执行的守卫,此时组件已获取且其他导航守卫已通过;返回移除此守卫的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["beforeResolve"]>, (...args: never[]) => unknown>>[0]): () => void$router.afterEach:(NonNullable<AsamScrollbarExpose["$router"]>)["afterEach"]— 依赖声明添加每次导航结束后执行的钩子,并返回移除此钩子的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["afterEach"]>, (...args: never[]) => unknown>>[0]): () => void$router.onError:(NonNullable<AsamScrollbarExpose["$router"]>)["onError"]— 依赖声明添加导航期间未捕获错误的处理函数,涵盖同步和异步异常、守卫返回或传给 next 的错误,以及路由异步组件解析错误。
事件参数:
(handler: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["onError"]>, (...args: never[]) => unknown>>[0]): () => void$router.isReady:() => Promise<void>— 依赖声明返回在初次导航完成后兑现的 Promise,此时关联的异步进入钩子与异步组件均已解析;导航已完成时立即兑现。可用于保持服务端与客户端渲染一致;服务端需手动推入初始位置,客户端从 URL 自动读取。
事件参数:
(): Promise<void>$router.install:(app: App) => void— 依赖声明由 app.use(router) 自动调用,用户不应手动调用;客户端调用时会触发初次导航。
事件参数:
(app: App<any>): void
AsamScrollbarInstance 公开类型视图
import type { ComponentPublicInstance, ComponentOptionsBase, ComponentProvideOptions, Ref, ComponentOptionsMixin, GlobalComponents, GlobalDirectives, WatchOptions, WatchStopHandle, ShallowRef, App } from 'vue';
import type { AsamScrollbarInstance, AsamScrollbarExpose, AsamTableColumnExpose, AsamScrollbarProps, AsamScrollbarSlots, AsamScrollbarDirection } from '@asam-ui/ui';
type PublicMember<T, K extends PropertyKey> = T extends unknown ? K extends keyof T ? T[K] : never : never;
// AsamScrollbarInstance
type PublicContract = {
"$": AsamScrollbarExpose["$"];
"$data": AsamTableColumnExpose;
"$props": AsamScrollbarProps;
"$attrs": AsamScrollbarExpose["$attrs"];
"$refs": AsamScrollbarExpose["$refs"];
"$slots": AsamScrollbarSlots;
"$root": ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null;
"$parent": ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null;
"$host": Element | null;
"$emit": ((event: "scroll", args_0: { scrollTop: number; scrollLeft: number; }) => void) & ((event: "end-reached", direction: AsamScrollbarDirection) => void);
"$el": any;
"$options": (AsamScrollbarInstance)["$options"];
"$forceUpdate": () => void;
"$nextTick": (AsamScrollbarInstance)["$nextTick"];
"$watch": (AsamScrollbarInstance)["$watch"];
readonly "height": string | number;
readonly "tag": (string & {}) | keyof HTMLElementTagNameMap;
readonly "tabindex": string | number;
readonly "maxHeight": string | number;
readonly "distance": number;
readonly "wrapStyle": (AsamScrollbarInstance)["wrapStyle"];
readonly "wrapClass": string | false | Record<string, any> | AsamScrollbarProps["wrapClass"][] | null;
readonly "viewClass": string | false | Record<string, any> | AsamScrollbarProps["wrapClass"][] | null;
readonly "viewStyle": (AsamScrollbarInstance)["viewStyle"];
readonly "minSize": number;
readonly "ariaLabel"?: string | undefined;
readonly "id"?: string | undefined;
readonly "role"?: string | undefined;
readonly "onScroll"?: ((args_0: { scrollTop: number; scrollLeft: number; }) => any) | undefined;
readonly "onEnd-reached"?: ((direction: AsamScrollbarDirection) => any) | undefined;
readonly "always"?: boolean | undefined;
readonly "native"?: boolean | undefined;
readonly "noresize"?: boolean | undefined;
readonly "ariaOrientation"?: "undefined" | "horizontal" | "vertical" | undefined;
"wrapRef": HTMLDivElement | undefined;
"update": () => void;
"scrollTo": { (xCord: number, yCord?: number): void; (options: ScrollToOptions): void; };
"setScrollTop": (value: number) => void;
"setScrollLeft": (value: number) => void;
"handleScroll": () => void;
"$route": AsamScrollbarExpose["$route"];
"$router": AsamScrollbarExpose["$router"];
};
作用域插槽保留上游实例契约。
参数与事件说明
default
必填:否;声明来源:上游声明。
default 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(props: AsamTableColumnExpose): any
AsamScrollbarSlots 公开类型视图
import type { AsamScrollbarSlots, AsamScrollbarExpose, AsamTableColumnExpose } from '@asam-ui/ui';
// AsamScrollbarSlots
type PublicContract = {
"default"?: (AsamScrollbarSlots)["default"];
readonly [key: string]: import("vue").Slot<any> | undefined;
};
参数与事件说明
scrollbarElement
必填:是;声明来源:上游声明。
scrollbarElement 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
wrapElement
必填:是;声明来源:上游声明。
wrapElement 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
AsamScrollbarContext 公开类型视图
import type { AsamScrollbarContext, AsamScrollbarExpose } from '@asam-ui/ui';
// AsamScrollbarContext
type PublicContract = {
"scrollbarElement": HTMLDivElement | undefined;
"wrapElement": HTMLDivElement | undefined;
};
组合契约按分支生效;请同时查看公开类型。
AsamScrollbarDirection 公开类型视图
import type { AsamScrollbarDirection } from '@asam-ui/ui';
// AsamScrollbarDirection
type PublicContract = AsamScrollbarDirection;
参数与事件说明
end-reached
必填:是;声明来源:上游声明。
end-reached 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(direction: AsamScrollbarDirection): boolean
scroll
必填:是;声明来源:上游声明。
scroll 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(__0: { scrollTop: number; scrollLeft: number; }): boolean
AsamScrollbarEmits 公开类型视图
import type { AsamScrollbarEmits, AsamScrollbarDirection } from '@asam-ui/ui';
// AsamScrollbarEmits
type PublicContract = {
"end-reached": (direction: AsamScrollbarDirection) => boolean;
"scroll": ({ scrollTop, scrollLeft }: { scrollTop: number; scrollLeft: number; }) => boolean;
};
参数与事件说明
ariaLabel
必填:否;声明来源:上游声明。
id
必填:否;声明来源:上游声明。
role
必填:否;声明来源:上游声明。
tabindex
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码默认表达式:undefined(2.14.7;源码事实,未作为 ASAM 运行实测)
height
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
maxHeight
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
always
必填:否;声明来源:上游声明。
always 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
tag
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码默认表达式:'div'(2.14.7;源码事实,未作为 ASAM 运行实测)
distance
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码默认表达式:0(2.14.7;源码事实,未作为 ASAM 运行实测)
native
必填:否;声明来源:上游声明。
native 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
wrapStyle
必填:否;声明来源:上游声明。
wrapStyle 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
默认值与来源
未知 / 未声明固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
wrapClass
必填:否;声明来源:上游声明。
wrapClass 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
默认值与来源
未知 / 未声明固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
viewClass
必填:否;声明来源:上游声明。
viewClass 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
默认值与来源
未知 / 未声明固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
viewStyle
必填:否;声明来源:上游声明。
viewStyle 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
默认值与来源
未知 / 未声明固定上游源码默认表达式:''(2.14.7;源码事实,未作为 ASAM 运行实测)
noresize
必填:否;声明来源:上游声明。
noresize 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
minSize
必填:否;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码默认表达式:20(2.14.7;源码事实,未作为 ASAM 运行实测)
ariaOrientation
必填:否;声明来源:上游声明。
AsamScrollbarPropsPublic 公开类型视图
import type { AsamScrollbarPropsPublic, AsamScrollbarProps } from '@asam-ui/ui';
// AsamScrollbarPropsPublic
type PublicContract = {
readonly "ariaLabel"?: string | undefined;
readonly "id"?: string | undefined;
readonly "role"?: string | undefined;
readonly "tabindex"?: (AsamScrollbarPropsPublic)["tabindex"];
readonly "height"?: (AsamScrollbarPropsPublic)["height"];
readonly "maxHeight"?: (AsamScrollbarPropsPublic)["maxHeight"];
readonly "always"?: boolean | undefined;
readonly "tag"?: string | undefined;
readonly "distance"?: number | undefined;
readonly "native"?: boolean | undefined;
readonly "wrapStyle"?: (AsamScrollbarPropsPublic)["wrapStyle"];
readonly "wrapClass"?: AsamScrollbarProps["wrapClass"];
readonly "viewClass"?: AsamScrollbarProps["wrapClass"];
readonly "viewStyle"?: (AsamScrollbarPropsPublic)["viewStyle"];
readonly "noresize"?: boolean | undefined;
readonly "minSize"?: number | undefined;
readonly "ariaOrientation"?: string | undefined;
};
参数与事件说明
$
必填:是;声明来源:依赖声明。
$ 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$data
必填:是;声明来源:依赖声明。
$props
必填:是;声明来源:依赖声明。
$attrs
必填:是;声明来源:依赖声明。
$attrs 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$refs
必填:是;声明来源:依赖声明。
$refs 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$slots
必填:是;声明来源:依赖声明。
$slots 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$root
必填:是;声明来源:依赖声明。
$parent
必填:是;声明来源:依赖声明。
$host
必填:是;声明来源:依赖声明。
$host 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
嵌套展开边界:大型实例类型;完整类型见公开类型视图。
$emit
必填:是;声明来源:依赖声明。
$emit 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(event: string, ...args: any[]): void
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$el
必填:是;声明来源:依赖声明。
$options
必填:是;声明来源:依赖声明。
$forceUpdate
必填:是;声明来源:依赖声明。
$forceUpdate 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): void
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$nextTick
必填:是;声明来源:依赖声明。
$nextTick 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:(): Promise<void>
事件参数:<T, R>(this: T, fn: (this: T) => R | Promise<R>): Promise<R>
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$watch
必填:是;声明来源:依赖声明。
$watch 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
事件参数:<T extends string | ((...args: any) => any)>(source: T, cb: Parameters<Extract<NonNullable<(AsamScrollbarThumbInstance)["$watch"]>, (...args: never[]) => unknown>>[1], options?: WatchOptions<boolean> | undefined): WatchStopHandle
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
size
必填:否;声明来源:上游声明。
vertical
必填:否;声明来源:上游声明。
vertical 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
always
必填:否;声明来源:上游声明。
always 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
ratio
必填:是;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码未声明 default(2.14.7;源码事实,未作为 ASAM 运行实测)
move
必填:否;声明来源:上游声明。
$route
必填:是;声明来源:依赖声明。
$route 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
$route.matched:(NonNullable<AsamScrollbarExpose["$route"]>)["matched"]— 依赖声明仅包含普通组件的 RouteLocationMatched 数组;懒加载组件已解析并替换 components 中的值,可直接展示路由,不包含重定向记录。此属性不可枚举。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$route.name:(NonNullable<AsamScrollbarExpose["$route"]>)["name"]— 依赖声明匹配路由记录的名称。
$route.fullPath:string— 依赖声明包含 search 和 hash 的完整位置字符串,使用百分号编码。
$route.query:(NonNullable<AsamScrollbarExpose["$route"]>)["query"]— 依赖声明当前位置 search 属性的对象表示。
$route.hash:string— 依赖声明当前位置的哈希片段;存在时以 # 开头。
$route.redirectedFrom:(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]— 依赖声明最终到达当前位置之前,最初尝试访问的位置。
$route.redirectedFrom.matched:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "matched">— 依赖声明包含添加路由时原始组件的 RouteRecord 数组,也可能包含重定向记录,不能直接用于展示。此属性不可枚举。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$route.redirectedFrom.fullPath:string— 依赖声明包含 search 和 hash 的完整位置字符串,使用百分号编码。
$route.redirectedFrom.query:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "query">— 依赖声明当前位置 search 属性的对象表示。
$route.redirectedFrom.hash:string— 依赖声明当前位置的哈希片段;存在时以 # 开头。
$route.redirectedFrom.redirectedFrom:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "redirectedFrom">— 依赖声明最终到达当前位置之前,最初尝试访问的位置。
嵌套展开边界:递归引用;完整类型见公开类型视图。
$route.redirectedFrom.name:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "name">— 依赖声明匹配路由记录的名称。
$route.redirectedFrom.meta:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "meta">— 依赖声明全部匹配路由记录合并后的 meta 属性。
$route.redirectedFrom.params:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "params">— 依赖声明从 path 提取并解码后的参数对象。
$route.redirectedFrom.path:string— 依赖声明URL 中经过百分号编码的路径部分。
$route.redirectedFrom.replace:boolean | undefined— 依赖声明替换当前历史记录,而不是添加新记录。
枚举:
false/true$route.redirectedFrom.force:boolean | undefined— 依赖声明即使目标与当前位置相同,也触发导航;除非传入 replace: true,否则会添加一条历史记录。
枚举:
false/true$route.redirectedFrom.state:PublicMember<NonNullable<(NonNullable<AsamScrollbarExpose["$route"]>)["redirectedFrom"]>, "state">— 依赖声明通过 History API 保存的状态;不能包含响应式值,也不允许 Symbol 等部分值。详情参见 https://developer.mozilla.org/zh-CN/docs/Web/API/History/state。
$route.meta:(NonNullable<AsamScrollbarExpose["$route"]>)["meta"]— 依赖声明全部匹配路由记录合并后的 meta 属性。
$route.params:(NonNullable<AsamScrollbarExpose["$route"]>)["params"]— 依赖声明从 path 提取并解码后的参数对象。
$route.path:string— 依赖声明URL 中经过百分号编码的路径部分。
$router
必填:是;声明来源:依赖声明。
$router 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
$router.options:(NonNullable<AsamScrollbarExpose["$router"]>)["options"]— 依赖声明创建路由器时传入的原始配置对象。
$router.options.routes:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["routes"]— 依赖声明需要添加到路由器的初始路由列表。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$router.options.history:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]— 依赖声明路由器使用的历史记录实现。通常使用 createWebHistory,并配置服务器回退;createWebHashHistory 无需服务器配置,但搜索引擎无法处理其哈希路由,影响搜索优化。
$router.options.history.base:string— 依赖声明添加到每个 URL 前的基础路径;例如 base 为 /sub-folder 时,可将单页应用部署在域名的对应子目录。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.location:string— 依赖声明当前历史记录位置。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.state:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["state"]— 依赖声明当前历史记录状态。
嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.push:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["push"]— 依赖声明导航到指定位置;使用 HTML5 History 时,通过 history.pushState 实际更新 URL。
事件参数:
(to: string, data?: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["push"]>, (...args: never[]) => unknown>>[1]): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.replace:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["replace"]— 依赖声明与 RouterHistory.push 类似,但调用 history.replaceState,而非 history.pushState。
事件参数:
(to: string, data?: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["replace"]>, (...args: never[]) => unknown>>[1]): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.go:(delta: number, triggerListeners?: boolean) => void— 依赖声明按指定方向遍历历史记录。
事件参数:
(delta: number, triggerListeners?: boolean | undefined): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.listen:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["listen"]— 依赖声明为历史记录实现添加监听器;由浏览器前进、后退等外部导航,或传入 true 的 RouterHistory.back、RouterHistory.forward 触发。
事件参数:
(callback: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["listen"]>, (...args: never[]) => unknown>>[0]): () => void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.createHref:(NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["history"]>)["createHref"]— 依赖声明生成用于链接元素的对应 href。
事件参数:
(location: string): string嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.history.destroy:() => void— 依赖声明清除历史记录实现注册的全部事件监听器。
事件参数:
(): void嵌套展开边界:深度上限;完整类型见公开类型视图。
$router.options.scrollBehavior:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]— 依赖声明控制页面导航时滚动行为的函数;可返回 Promise 延迟滚动。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>[0], from: AsamScrollbarExpose["$route"], savedPosition: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>[2]): ReturnType<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["scrollBehavior"]>, (...args: never[]) => unknown>>$router.options.parseQuery:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["parseQuery"]— 依赖声明自定义查询参数解析函数;与 EXPERIMENTAL_RouterOptions_Base.stringifyQuery 配套。
事件参数:
(search: string): ReturnType<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["parseQuery"]>, (...args: never[]) => unknown>>$router.options.stringifyQuery:(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["stringifyQuery"]— 依赖声明自定义查询对象序列化函数;不要添加开头的 ?,与 parseQuery 的解析函数配套。
事件参数:
(query: Parameters<Extract<NonNullable<(NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["options"]>)["stringifyQuery"]>, (...args: never[]) => unknown>>[0]): string$router.options.linkActiveClass:string | undefined— 依赖声明应用于激活 RouterLink 的默认类名;未指定时使用 router-link-active。
$router.options.linkExactActiveClass:string | undefined— 依赖声明应用于精确激活 RouterLink 的默认类名;未指定时使用 router-link-exact-active。
$router.options.end:boolean | undefined— 依赖声明是否在表达式末尾添加 $,使其匹配到路径结尾。
声明默认:
`true`(注释,实际运行默认以源码/安装包为准)枚举:
false/true$router.options.sensitive:boolean | undefined— 依赖声明使正则表达式区分大小写。
声明默认:
`false`(注释,实际运行默认以源码/安装包为准)枚举:
false/true$router.options.strict:boolean | undefined— 依赖声明是否禁止路径末尾的斜杠。
声明默认:
`false`(注释,实际运行默认以源码/安装包为准)枚举:
false/true
$router.addRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["addRoute"]— 依赖声明向已有路由添加子路由,或向路由器添加新的 RouteRecordRaw 路由记录。
事件参数完整签名见公开类型视图。
事件参数完整签名见公开类型视图。
$router.removeRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["removeRoute"]— 依赖声明按名称移除已有路由。
事件参数:
(name: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["removeRoute"]>, (...args: never[]) => unknown>>[0]): void$router.clearRoutes:() => void— 依赖声明从路由器中删除全部路由。
事件参数:
(): void$router.currentRoute:ShallowRef<AsamScrollbarExpose["$route"]>— 依赖声明当前 RouteLocationNormalized。
嵌套展开边界:框架 / 平台类型;完整类型见公开类型视图。
$router.listening:boolean— 依赖声明允许关闭历史事件监听,这是用于微前端的底层 API。
枚举:
false/true$router.hasRoute:(NonNullable<AsamScrollbarExpose["$router"]>)["hasRoute"]— 依赖声明检查指定名称的路由是否存在。
事件参数:
(name: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["hasRoute"]>, (...args: never[]) => unknown>>[0]): boolean$router.getRoutes:(NonNullable<AsamScrollbarExpose["$router"]>)["getRoutes"]— 依赖声明获取全部 RouteRecord 路由记录的完整列表。
事件参数:
(): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["getRoutes"]>, (...args: never[]) => unknown>>$router.resolve:(NonNullable<AsamScrollbarExpose["$router"]>)["resolve"]— 依赖声明返回 RouteLocationRaw 的规范化位置,包含带基础路径的 href;默认使用 router.currentRoute 作为 currentLocation,仅在高级场景中覆盖。
事件参数完整签名见公开类型视图。
事件参数完整签名见公开类型视图。
$router.push:(NonNullable<AsamScrollbarExpose["$router"]>)["push"]— 依赖声明通过向历史栈添加记录,以编程方式导航到新 URL。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["push"]>, (...args: never[]) => unknown>>[0]): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["push"]>, (...args: never[]) => unknown>>$router.replace:(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]— 依赖声明通过替换历史栈中的当前记录,以编程方式导航到新 URL。
事件参数:
(to: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]>, (...args: never[]) => unknown>>[0]): ReturnType<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["replace"]>, (...args: never[]) => unknown>>$router.back:() => void— 依赖声明通过 history.back() 在可用时后退,等价于 router.go(-1)。
事件参数:
(): void$router.forward:() => void— 依赖声明通过 history.forward() 在可用时前进,等价于 router.go(1)。
事件参数:
(): void$router.go:(delta: number) => void— 依赖声明通过调用 history.go() 在历史记录中前进或后退。
事件参数:
(delta: number): void$router.beforeEach:(NonNullable<AsamScrollbarExpose["$router"]>)["beforeEach"]— 依赖声明添加每次导航之前执行的守卫,并返回移除此守卫的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["beforeEach"]>, (...args: never[]) => unknown>>[0]): () => void$router.beforeResolve:(NonNullable<AsamScrollbarExpose["$router"]>)["beforeResolve"]— 依赖声明添加导航确认之前执行的守卫,此时组件已获取且其他导航守卫已通过;返回移除此守卫的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["beforeResolve"]>, (...args: never[]) => unknown>>[0]): () => void$router.afterEach:(NonNullable<AsamScrollbarExpose["$router"]>)["afterEach"]— 依赖声明添加每次导航结束后执行的钩子,并返回移除此钩子的函数。
事件参数:
(guard: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["afterEach"]>, (...args: never[]) => unknown>>[0]): () => void$router.onError:(NonNullable<AsamScrollbarExpose["$router"]>)["onError"]— 依赖声明添加导航期间未捕获错误的处理函数,涵盖同步和异步异常、守卫返回或传给 next 的错误,以及路由异步组件解析错误。
事件参数:
(handler: Parameters<Extract<NonNullable<(NonNullable<AsamScrollbarExpose["$router"]>)["onError"]>, (...args: never[]) => unknown>>[0]): () => void$router.isReady:() => Promise<void>— 依赖声明返回在初次导航完成后兑现的 Promise,此时关联的异步进入钩子与异步组件均已解析;导航已完成时立即兑现。可用于保持服务端与客户端渲染一致;服务端需手动推入初始位置,客户端从 URL 自动读取。
事件参数:
(): Promise<void>$router.install:(app: App) => void— 依赖声明由 app.use(router) 自动调用,用户不应手动调用;客户端调用时会触发初次导航。
事件参数:
(app: App<any>): void
AsamScrollbarThumbInstance 公开类型视图
import type { VNodeProps, AllowedComponentProps, ComponentCustomProps, ComponentPublicInstance, ComponentOptionsBase, ComponentProvideOptions, ComponentOptionsMixin, GlobalComponents, GlobalDirectives, WatchOptions, WatchStopHandle, ShallowRef, App } from 'vue';
import type { AsamScrollbarThumbInstance, AsamScrollbarExpose, AsamTableColumnExpose, AsamAvatarGroupSlots, AsamScrollbarThumbProps, AsamScrollbarProps } from '@asam-ui/ui';
type PublicMember<T, K extends PropertyKey> = T extends unknown ? K extends keyof T ? T[K] : never : never;
// AsamScrollbarThumbInstance
type PublicContract = {
"$": AsamScrollbarExpose["$"];
"$data": AsamTableColumnExpose;
"$props": { readonly vertical?: boolean | undefined; readonly size?: string | undefined; readonly move?: number | undefined; readonly ratio: number; readonly always?: boolean | undefined; } & VNodeProps & AllowedComponentProps & ComponentCustomProps;
"$attrs": AsamScrollbarExpose["$attrs"];
"$refs": AsamScrollbarExpose["$refs"];
"$slots": AsamAvatarGroupSlots;
"$root": ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null;
"$parent": ComponentPublicInstance<{}, {}, {}, {}, {}, {}, {}, {}, false, ComponentOptionsBase<any, any, any, any, any, any, any, any, any, {}, {}, string, {}, {}, {}, string, ComponentProvideOptions>, {}, {}, "", {}, any> | null;
"$host": Element | null;
"$emit": (event: string, ...args: any[]) => void;
"$el": any;
"$options": (AsamScrollbarThumbInstance)["$options"];
"$forceUpdate": () => void;
"$nextTick": (AsamScrollbarThumbInstance)["$nextTick"];
"$watch": (AsamScrollbarThumbInstance)["$watch"];
readonly "size"?: string | undefined;
readonly "vertical"?: boolean | undefined;
readonly "always"?: boolean | undefined;
readonly "ratio": number;
readonly "move"?: number | undefined;
"$route": AsamScrollbarExpose["$route"];
"$router": AsamScrollbarExpose["$router"];
};
参数与事件说明
vertical
必填:否;声明来源:上游声明。
vertical 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
size
必填:否;声明来源:上游声明。
move
必填:否;声明来源:上游声明。
ratio
必填:是;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码未声明 default(2.14.7;源码事实,未作为 ASAM 运行实测)
always
必填:否;声明来源:上游声明。
always 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
AsamScrollbarThumbProps 公开类型视图
import type { AsamScrollbarThumbProps, AsamScrollbarProps, AsamScrollbarExpose } from '@asam-ui/ui';
// AsamScrollbarThumbProps
type PublicContract = {
"vertical"?: boolean | undefined;
"size"?: string | undefined;
"move"?: number | undefined;
"ratio": number;
"always"?: boolean | undefined;
};
参数与事件说明
ratio
必填:是;声明来源:上游声明。
默认值与来源
未知 / 未声明固定上游源码未声明 default(2.14.7;源码事实,未作为 ASAM 运行实测)
size
必填:否;声明来源:上游声明。
vertical
必填:否;声明来源:上游声明。
vertical 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
always
必填:否;声明来源:上游声明。
always 参数与事件数据
下列为声明可读视图;可导入类型以公开类型视图为准。分支条件与父属性一致。
枚举:false / true
move
必填:否;声明来源:上游声明。
AsamScrollbarThumbPropsPublic 公开类型视图
import type { AsamScrollbarThumbPropsPublic, AsamScrollbarExpose, AsamScrollbarProps } from '@asam-ui/ui';
// AsamScrollbarThumbPropsPublic
type PublicContract = {
readonly "ratio": number;
readonly "size"?: string | undefined;
readonly "vertical"?: boolean | undefined;
readonly "always"?: boolean | undefined;
readonly "move"?: number | undefined;
};