Skip to content

SScrollBox <s-scroll-box> ​

Un contenedor que desplaza su contenido cuando se desborda. SScrollBox es el wrapper de Vue 3 tipado del web component <s-scroll-box> de Shopify Polaris.

ts
import { SScrollBox } from 'polaris-vue-elements'

Ejemplo ​

Scrollable row 1Scrollable row 2Scrollable row 3Scrollable row 4Scrollable row 5Scrollable row 6Scrollable row 7Scrollable row 8
vue
<script setup>
import { SScrollBox, SBox, SText } from 'polaris-vue-elements'
</script>

<template>
  <!-- maxBlockSize only accepts the "none"/"0" keywords, so an arbitrary pixel cap is
       set as a plain style attribute (it passes through untyped, see the quirks guide). -->
  <SScrollBox
    style="max-height: 160px"
    overflow="auto"
    border="base"
    borderRadius="200"
    padding="base"
  >
    <SBox
      v-for="n in 8"
      :key="n"
      padding="small"
      paddingBlockEnd="small"
      borderColor="subdued"
      borderWidth="small"
      borderStyle="solid"
    >
      <SText>Scrollable row {{ n }}</SText>
    </SBox>
  </SScrollBox>
</template>

Props ​

PropTipoDescripción
accessibilityLabelstringUna etiqueta que describe el contenedor de desplazamiento para las tecnologías de asistencia.
accessibilityRole"generic" | "region"Define el significado semántico del contenido del componente.
accessibilityVisibility"visible" | "hidden" | "exclusive"Cambia la visibilidad del elemento. - visible: el elemento es visible para todos los usuarios. - hidden: el elemento se elimina del árbol de accesibilidad, pero sigue siendo visible. - exclusive: el elemento se oculta visualmente, pero permanece en el árbol de accesibilidad.
background"subdued" | "base" | "strong" | "transparent"El color de fondo del componente.
blockSize"auto" | "0"El tamaño vertical del elemento en diseños estándar (la altura en modos de escritura de izquierda a derecha o de derecha a izquierda). El tamaño de bloque se ajusta según la dirección de escritura: en diseños horizontales controla la altura; en diseños verticales controla la anchura. Esto garantiza un comportamiento coherente en distintas direcciones de texto. Más información sobre block-size.
borderBorderShorthandUn borde aplicado con sintaxis abreviada para especificar el ancho, el color y el estilo en una sola propiedad.
borderColor"subdued" | "base" | "strong"El color del borde según la escala de colores del sistema de diseño. Cuando se establece, sobrescribe el valor de color especificado en la propiedad border. Elige entre subdued, base o strong según el énfasis visual necesario.
borderRadiusMaybeAllValuesShorthandProperty<BoxBorderRadii>El redondeo de las esquinas del elemento según la escala de radios del sistema de diseño. Admite la sintaxis de 1 a 4 valores para especificar radios distintos por esquina. Úsalo para crear esquinas redondeadas o elementos completamente redondeados.
borderStyle"" | MaybeAllValuesShorthandProperty<BoxBorderStyles>El estilo visual del borde en todos los lados, como sólido, discontinuo o punteado. Cuando se establece, anula el valor de estilo especificado en la propiedad border. Admite la sintaxis de 1 a 4 valores para especificar estilos distintos por lado.
borderWidth"" | MaybeAllValuesShorthandProperty<"base" | "small-100" | "small" | "large" | "large-100" | "none">El grosor del borde en todos los lados. Cuando se establece, anula el valor de ancho especificado en la propiedad border. Admite la sintaxis de 1 a 4 valores para especificar anchos distintos por lado.
display"auto" | "none"El tipo de display externo del componente. El tipo externo determina cómo participa un componente en el flujo de diseño. - auto: el valor inicial del componente. El valor real depende del componente y del contexto. - none: oculta el componente y lo elimina del árbol de accesibilidad, de modo que resulta invisible para los lectores de pantalla.
inlineSize"auto" | "0"La anchura en modos de escritura horizontales, o la altura en modos de escritura verticales. Úsalo para un dimensionamiento relativo al flujo que se adapte a la dirección del texto. Más información sobre inline-size.
maxBlockSize"none" | "0"La altura máxima en modos de escritura horizontales, o la anchura máxima en modos de escritura verticales. Impide que el elemento crezca más allá de este tamaño. Más información sobre max-block-size.
maxInlineSize"none" | "0"La anchura máxima en modos de escritura horizontales, o la altura máxima en modos de escritura verticales. Impide que el elemento crezca más allá de este tamaño. Más información sobre max-inline-size.
minBlockSize"0"La altura mínima en modos de escritura horizontales, o la anchura mínima en modos de escritura verticales. Impide que el elemento se reduzca por debajo de este tamaño. Más información sobre min-block-size.
minInlineSize"0"La anchura mínima en modos de escritura horizontales, o la altura mínima en modos de escritura verticales. Impide que el elemento se reduzca por debajo de este tamaño. Más información sobre min-inline-size.
overflow"auto" | "hidden" | "auto auto" | "auto hidden" | "hidden auto" | "hidden hidden"Define el comportamiento de desbordamiento del elemento.
paddingMaybeResponsive<MaybeAllValuesShorthandProperty<PaddingKeyword>>El relleno aplicado a todos los bordes del componente. Admite la sintaxis de 1 a 4 valores con valores relativos al flujo: - 1 valor se aplica a todos los lados - 2 valores se aplican a block (arriba/abajo) e inline (izquierda/derecha) - 3 valores se aplican a block-start (arriba), inline (izquierda/derecha) y block-end (abajo) - 4 valores se aplican a block-start (arriba), inline-end (derecha), block-end (abajo) e inline-start (izquierda) Ejemplos:* base, large none, base large-100 base small Usa auto para heredar el relleno del contenedor más cercano con el relleno eliminado. También acepta una cadena de valor adaptable con el PaddingKeyword admitido como valor de consulta.
paddingBlockMaybeResponsive<"" | MaybeTwoValuesShorthandProperty<PaddingKeyword>>El relleno en la dirección de bloque (arriba y abajo en modos de escritura horizontales). Acepta un solo valor para ambos lados o dos valores separados por espacios para block-start y block-end. Ejemplo:* large none aplica large arriba y none abajo. Sobrescribe el valor de bloque de padding. También acepta una cadena de valor adaptable con el PaddingKeyword admitido como valor de consulta.
paddingBlockEnd"base" | "small-200" | "small-100" | "small" | "large" | "large-100" | "small-500" | "small-400" … (6 more)El relleno block-end (abajo en modos de escritura horizontales). Sobrescribe el valor block-end de paddingBlock. También acepta una cadena de valor adaptable con el PaddingKeyword admitido como valor de consulta.
paddingBlockStart"base" | "small-200" | "small-100" | "small" | "large" | "large-100" | "small-500" | "small-400" … (6 more)El relleno block-start (arriba en modos de escritura horizontales). Sobrescribe el valor block-start de paddingBlock. También acepta una cadena de valor adaptable con el PaddingKeyword admitido como valor de consulta.
paddingInlineMaybeResponsive<"" | MaybeTwoValuesShorthandProperty<PaddingKeyword>>El relleno en la dirección en línea (izquierda y derecha en modos de escritura horizontales). Acepta un solo valor para ambos lados o dos valores separados por espacios para inline-start e inline-end. Ejemplo:* large none aplica large a la izquierda y none a la derecha. Sobrescribe el valor en línea de padding. También acepta una cadena de valor adaptable con el PaddingKeyword admitido como valor de consulta.
paddingInlineEnd"base" | "small-200" | "small-100" | "small" | "large" | "large-100" | "small-500" | "small-400" … (6 more)El relleno inline-end (derecha en modos de escritura LTR, izquierda en RTL). Sobrescribe el valor inline-end de paddingInline. También acepta una cadena de valor adaptable con el PaddingKeyword admitido como valor de consulta.
paddingInlineStart"base" | "small-200" | "small-100" | "small" | "large" | "large-100" | "small-500" | "small-400" … (6 more)El relleno inline-start (izquierda en modos de escritura LTR, derecha en RTL). Sobrescribe el valor inline-start de paddingInline. También acepta una cadena de valor adaptable con el PaddingKeyword admitido como valor de consulta.
scrollMargin"0" | "0 0" | "0 0 0" | "0 0 0 0"Margen de desplazamiento del elemento (sintaxis abreviada de 1 a 4 valores, como en CSS).
scrollPadding"base" | "small-200" | "small-100" | "small" | "large" | "large-100" | "small-500" | "small-400" … (6 more)Desplazamiento para los puntos de alineación del ajuste de desplazamiento (scroll snap).
snapType"none" | "mandatory" | "proximity"Controla el comportamiento del ajuste de desplazamiento (scroll snap).

Algunas columnas de tipo de arriba están truncadas para facilitar la lectura; la unión completa está disponible en los tipos de TypeScript generados de la biblioteca (src/lib/generated/types.ts).

Events ​

EventTipo
scrollCustomEvent
scrolltoedgeCustomEvent

Escúchalos con listeners del estilo @scroll en <SScrollBox>.

Slots ​

SlotDescripción
defaultEl contenido del ScrollBox.

Publicado bajo la licencia MIT. Logo de Vue por Evan You, CC BY-NC-SA 4.0.