一个零依赖的原生 v-scroll 组件示例,包含:
- 原生
customElements+ Shadow DOM 结构隔离 - 真实
overflow: auto滚动容器 ResizeObserver尺寸探测- Pointer Events +
setPointerCapture拖拽映射 - 通过
importmap指向不同主题路径 - 通过 Vite 插件把主题 CSS 编译成
export default "..."的 JS 模块
npm install
npm run dev默认主题:
<script type="importmap">
{
"imports": {
"$/": "/theme/default/"
}
}
</script>切到另一套主题:
<script type="importmap">
{
"imports": {
"$/": "/theme/graphite/"
}
}
</script>