@duskmoon-dev/elements

中文文档
1.10.3发布于 2026/11/11TypeScriptESM + CJS构建来源已验证近 30 天下载 2616

一个包中所有 DuskMoon 自定义元素

中文使用文档
文档目录17 节
  1. 安装
  2. 使用量
  3. 通过 CDN (推荐) 自动注册
  4. 用 Bundler 自动注册
  5. 手工登记
  6. 使用元素类
  7. 包含要素
  8. 基本要素
  9. 窗体元素
  10. 反馈显示( D)
  11. 导航
  12. 地表和容器
  13. 数据显示
  14. 再出口公用事业
  15. 单个软件包
  16. 类型脚本支持
  17. 许可证

@duskmoon-dev/要素

所有 DuskMoon 自定义元素在一个包中.

安装

bun add @duskmoon-dev/elements

使用量

使用所有元素的最简单方式 - 只要添加脚本标记 :

<!-- Via CDN - registers all elements automatically -->
<script type="module" src="https://esm.sh/@duskmoon-dev/elements/register"></script>

<!-- Now all elements are available -->
<el-dm-button variant="primary">Click me</el-dm-button>
<el-dm-card>
  <h2>Card Title</h2>
  <p>Card content</p>
</el-dm-card>
<el-dm-input label="Name" placeholder="Enter your name"></el-dm-input>

用 Bundler 自动注册

// Just import to register all elements
import '@duskmoon-dev/elements/register';

手工登记

import { registerAll } from '@duskmoon-dev/elements';

// Register all elements
registerAll();

或者登记个人要素:

import { registerButton, registerCard, registerTable } from '@duskmoon-dev/elements';

registerButton();
registerCard();
registerTable();

使用元素类

import { ElDmButton, ElDmTable, ElDmTabs } from '@duskmoon-dev/elements';

// Access element classes directly
const button = document.querySelector('el-dm-button') as ElDmButton;
button.variant = 'primary';

包含要素

基本要素

元素标记说明
按钮<el-dm-button>有变体、大小、装入状态的按钮
纸牌<el-dm-card>装有页眉、车身和页脚槽的集装箱

窗体元素

元素标记说明
投入<el-dm-input>包含验证状态的文本输入
切换<el-dm-switch>切换切换控制
幻灯片<el-dm-slider>带有可选范围模式的区域滑动器
自动完成<el-dm-autocomplete>输入建议下拉
摘取日期者<el-dm-datepicker>带有日历弹出的日期拾取器
文件加载<el-dm-file-upload>拖放文件上传
表单<el-dm-form>带有验证的窗体容器

反馈显示( D)

元素标记说明
警报<el-dm-alert>带有严重程度变量的提醒信息
对话框<el-dm-dialog>带有背景的模块对话框
徽标<el-dm-badge>状态徽章和计数器
芯片<el-dm-chip>可选删除的标记和芯片
工具提示<el-dm-tooltip>隐藏工具提示
进展<el-dm-progress>进步栏和不确定的旋转器
标记<el-dm-markdown>带有语法加亮的下调渲染器

导航

元素标记说明
标签<el-dm-tabs>标签界面
菜单<el-dm-menu>下放和上下文菜单
导航<el-dm-navbar>导航栏
绘图器<el-dm-drawer>滑出抽屉面板
面包屑<el-dm-breadcrumbs>面包屑导航
倾斜<el-dm-pagination>页面导航控制
步进<el-dm-stepper>向导的步数指标
底部导航<el-dm-bottom-navigation>移动底层导航

地表和容器

元素标记说明
手风琴<el-dm-accordion>可折叠的内容部分
过量<el-dm-popover>浮出水面内容弹出
底盘<el-dm-bottom-sheet>移动底页

数据显示

元素标记说明
日期<el-dm-datetime>只显示 ISO 日期和日期
图表<el-dm-table>带有排序、页码、选择的数据表

再出口公用事业

该套软件还从下列公司再出口公用事业: @duskmoon-dev/el-base数字 :

import {
  BaseElement,
  css,
  combineStyles,
  cssVars,
  defaultTheme,
  resetStyles,
} from '@duskmoon-dev/elements';

单个软件包

如果您仅需要特定元素, 请单独安装, 用于较小的捆绑大小 :

软件包CDN URL (简体中文)
@duskmoon-dev/el-buttonhttps://esm.sh/@duskmoon-dev/el-button/register
@duskmoon-dev/el-cardhttps://esm.sh/@duskmoon-dev/el-card/register
@duskmoon-dev/el-inputhttps://esm.sh/@duskmoon-dev/el-input/register
@duskmoon-dev/el-datetimehttps://esm.sh/@duskmoon-dev/el-datetime/register
@duskmoon-dev/el-tablehttps://esm.sh/@duskmoon-dev/el-table/register
@duskmoon-dev/el-tabshttps://esm.sh/@duskmoon-dev/el-tabs/register
@duskmoon-dev/el-markdownhttps://esm.sh/@duskmoon-dev/el-markdown/register

使用单个包的例子 :

<!-- Only load the button element -->
<script type="module" src="https://esm.sh/@duskmoon-dev/el-button/register"></script>

<el-dm-button>Click me</el-dm-button>

或与一捆子:

import '@duskmoon-dev/el-button/register';
import '@duskmoon-dev/el-table/register';

类型脚本支持

所有元素类型和接口均导出 :

import type {
  // Property types from core
  Size,
  Variant,
  ValidationState,

  // Element-specific types
  TableColumn,
  TableRow,
  AutocompleteOption,
  BreadcrumbItem,
  PopoverPlacement,
  TabsVariant,
} from '@duskmoon-dev/elements';

许可证

麻省理工学院

版本与发布记录

@duskmoon-dev/elements 共发布 53 个版本,首次发布于 2026/01/04;过去 12 个月发布了 53 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
1.10.3latest2026/11/112 天前
1.10.22026/10/2222 天前
1.10.12026/10/1627 天前
1.10.02026/10/1628 天前
1.9.32026/10/131 个月前
1.9.22026/10/131 个月前

关于 @duskmoon-dev/elements 的常见问题

@duskmoon-dev/elements 是什么?

一个包中所有 DuskMoon 自定义元素

如何安装 @duskmoon-dev/elements?

在项目目录运行 npm install @duskmoon-dev/elements,或使用 pnpm add / yarn add / bun add。

@duskmoon-dev/elements 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@duskmoon-dev/elements 支持 ESM 还是 CommonJS?

同时提供 ES Module 与 CommonJS 入口,import 和 require() 都可以使用,打包工具会自动选择合适的版本。

@duskmoon-dev/elements 可以商用吗?

@duskmoon-dev/elements 使用 未声明 许可。package.json 没有声明许可证。没有许可证的代码默认保留全部权利,商用前请联系作者或查看仓库中的 LICENSE 文件。以上为概括,不构成法律意见,请以许可原文为准。

@duskmoon-dev/elements 的下载量有多少?

根据 npm 官方下载统计,@duskmoon-dev/elements 在 2026/10/13 – 2026/11/11 这 30 天内被下载 2,616 次,日均约 87 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@duskmoon-dev/elements 还在维护吗?

最新版本 1.10.3 发布于 2026/11/11(2 天前);至今共发布 53 个版本,其中过去 12 个月发布了 53 个;首次发布于 2026/01/04。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。