Kosui
设计理念
这些原则是按优先顺序列出的。当它们发生冲突时,更高的原则获胜。
苗条的第一 —写习惯用语。选择符文、片段和Svelte内置的响应性,而不是与框架对抗的外部状态管理或模式。
是吝啬的 —保持组件尽可能简单。首先使用CSS;只有当CSS做不到的时候才使用JavaScript。不要添加没有价值的抽象。
默认可访问 ARIA角色、键盘导航和焦点管理是内置的,而不是附加的。一个组件只有在没有鼠标的情况下才算完成。
惯例重于发明 —如果一个组件是跨主要平台和框架(iOS、Android、Windows、macOS和web)的标准组件,那么它就属于库。它的行为应该是不足为奇的:按照这些平台的方式实现它,而不是我们想象它可能工作的方式。
透明的道具 组件不隐藏其底层DOM元素。每个成分都扩散开来 ...restProps 并提供了 el 绑定,这样消费者总是可以到达元素,而不需要对抗组件。
可组合胜过可配置 -比起布尔道具和字符串选项的扩散,更喜欢苗条的片段和组合。当组件需要定制时,请使用 {#snippet} 在添加另一个道具之前。
最小的依赖关系 -尽可能少的外部依赖。每个依赖项都是维护负担和潜在的破坏性更改。少量复制、易于理解的代码胜过大型的传递依赖关系图。
现代的基线 -目标当前,常绿浏览器。放弃旧的浏览器支持是可以接受的,以换取更简单的代码。
变更集
添加一个新的变更集:
pnpm changeset