跳到主要内容

设计理念

caution

This section is a work in progress.

  • 较少的学习 - Docusaurus 应当易于学习和使用,并且 API 要尽量少。即使需要用户花费更多的时间来编写代码,但大多数功能仍然可以由用户实现。没有抽象总比拥有错误的抽象好,而且我们不希望用户不得不绕过错误的抽象。 Mandatory talk - Minimal API Surface Area
  • 直观 - 当用户查看 Docusaurus 项目的目录或添加新功能时不会感到不知所措。Docusaurus 看起来应该直观且易于使用,并且采用用户所熟悉的方法。
  • 分层结构 - 软件系统中的每一层(内容/主题/样式)之间的关注点分离(separations of concerns,即 SoC)应具有清晰且良好的抽象、模块化。
  • 合理的默认值 - 默认为用户完成常见的和流行的性能优化和配置工作,但用户可以选择覆盖默认值。
  • 不锁定特定插件 - 尽管强烈建议用户使用默认插件或 CSS 样式,但这并不是必须的。某些核心的底层基础组件(如 React Loadable、React Router)是无法被替换的,因为我们对它们进行了性能优化。但对于非核心组件的选择(例如 Markdown 引擎、CSS 框架、CSS 方法论等)则完全取决于用户。

Docusaurus 的工作原理#

我们认为,作为开发者,了解工具库的工作方式有助于更好地使用它。 因此,我们致力于对 Docusaurus 的体系结构和各个组件进行详细说明,希望用户对该工具有更深入的了解,并更加熟练地使用它。