# 为什么 checklist 插件不是一个主题组件？

**URL:** https://meta.discourse.org/t/why-isnt-the-checklist-plugin-a-theme-component/381567
**Category:** Development
**Tags:** checklist
**Created:** [2025年九月4日 11:26 UTC](https://meta.discourse.org/t/why-isnt-the-checklist-plugin-a-theme-component/381567 "2025-09-04T11:26:27Z")
**Posts on this page:** 5
**Page:** 1

<div class="post-metadata">

### Author: ![NateDhaliwal](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/natedhaliwal/32/313494_2.png) [@NateDhaliwal](https://meta.discourse.org/u/NateDhaliwal)
#### Post date: [2025年九月4日 11:26 UTC](https://meta.discourse.org/t/why-isnt-the-checklist-plugin-a-theme-component/381567/1 "2025-09-04T11:26:27Z")

</div>

为什么 [checklist 插件](https://github.com/discourse/discourse/tree/main/plugins/checklist) 不是主题组件？ `plugin.rb` 文件几乎是空的，逻辑在 JS 端：

> <https://github.com/discourse/discourse/blob/main/plugins/checklist/plugin.rb>

（这就是全部内容！）

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2025年九月4日 11:31 UTC](https://meta.discourse.org/t/why-isnt-the-checklist-plugin-a-theme-component/381567/2 "2025-09-04T11:31:14Z")

</div>

👴 年龄可能：

 ![image](https://global.discourse-cdn.com/meta/original/4X/a/9/3/a936ea803fa794ac763c5a803b9de3a242863d90.png)

主题组件是相对较新的发明 🙂

---

<div class="post-metadata">

### Author: ![merefield](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/merefield/32/176214_2.png) [@merefield](https://meta.discourse.org/u/merefield)
#### Post date: [2025年九月4日 11:33 UTC](https://meta.discourse.org/t/why-isnt-the-checklist-plugin-a-theme-component/381567/3 "2025-09-04T11:33:58Z")

</div>

趣闻：

> [@Guest Gate Theme Component](https://meta.discourse.org/t/guest-gate-theme-component/225107):
>
> Hello wave This theme component is created from [Guest Gate (Sign Up Popup Plugin)](https://meta.discourse.org/t/guest-gate-sign-up-popup-plugin/56625/). It can lock topics for anon visitors with a modal and force them to Sign Up or Login. The component can be use for an alert modal, encouraging visitors to sign up but allowing them to close the modal (for this, leave the dismissable false setting unchecked). Options include changing the number of topics that can be viewed before the modal is displayed. Tip: If you use the …

和

> [@Composer Character Count](https://meta.discourse.org/t/composer-character-count/358733):
>
> information_sourceSummary A Theme Component to simultaneously display count the number of characters typed in the composer as well as the required number to post. Tracks Post body and Topic Title separately.hammer_and_wrenchRepository Link [GitHub - merefield/discourse-tc-character-count: A Theme Component to simultaneously count the number of characters typed in the composer as well as the required number to post!](https://github.com/merefield/discourse-tc-character-count)open_bookInstall Guide [Installing a theme or theme compo…](https://meta.discourse.org/t/install-a-theme-or-theme-component/63682)

（我敢肯定还有其他的）

是基于插件……

---

<div class="post-metadata">

### Author: ![NateDhaliwal](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/natedhaliwal/32/313494_2.png) [@NateDhaliwal](https://meta.discourse.org/u/NateDhaliwal)
#### Post date: [2025年九月4日 11:53 UTC](https://meta.discourse.org/t/why-isnt-the-checklist-plugin-a-theme-component/381567/4 "2025-09-04T11:53:09Z")

</div>

啊，那可能就是原因了。我想知道——为什么核心里没有“内置”的 TC 呢？（如果有的话，它们会在哪里？在 `/themes` 目录里吗？）

---

<div class="post-metadata">

### Author: ![chapoi](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/chapoi/32/537252_2.png) [@chapoi](https://meta.discourse.org/u/chapoi)
#### Post date: [2025年九月4日 12:32 UTC](https://meta.discourse.org/t/why-isnt-the-checklist-plugin-a-theme-component/381567/5 "2025-09-04T12:32:09Z")

</div>

不，如果我们把TC移到核心，它们只会存在于“普通”代码中。不像插件。
