JS 框架 词条目录
前端Wiki/词条/UI 组件库

UI 组件库

定义把按钮、表格、弹窗等常用界面元素做成可复用组件的集合,让团队在统一视觉与交互规范下开发

成熟的组件库不止是好看的皮肤:它把无障碍(aria 属性、键盘操作)、受控/非受控状态、复杂的弹层定位与边界处理等容易做错的细节都沉淀进去。一个人单独撩一个 DatePicker 的月份联动、键盘导航、时区处理远比想象中耗时,直接用库能省下大笔时间。

选型时考虑生态契合度:React 用 Ant Design、MUI;Vue 用 Element Plus、Naive UI、Vant;跨框架可看 Radix、headless 类方案配 Tailwind。二次封装时注意保留原有 API 透传,不要把库锁死在定制层里,否则后续升级会很痛苦。

JavaScript
// 受控与非受控双模式:成熟组件库组件的最小骨架
function createInput() {
  var listeners = [];
  var api = {
    set: function (v) { api.value = v; listeners.forEach(function (fn) { fn(v); }); },
    value: '',
    onChange: function (fn) { listeners.push(fn); return function () {
      listeners = listeners.filter(function (f) { return f !== fn; });
    }; }
  };
  var input = document.createElement('input');
  input.value = '';
  input.addEventListener('input', function (e) { api.set(e.target.value); });
  api.el = input;
  return api;
}

var myInput = createInput();
// 受控用法:外面同步状态
myInput.onChange(function (v) { console.log('值变化:' + v); });
document.body.appendChild(myInput.el);
⚠ 常见误区
🔗 相关词条组合式 API脚手架
← 返回来源章节组合式 API