我为我们的版主开发了一个专门的主题组件。该组件添加了一个模态框,提醒版主在处理标记后考虑暂停用户。我将此组件放置在 javascripts/discourse/admin/components/modal/remove-post.gjs,并在顶部使用 import AdminUser from "admin/models/admin-user"; 导入 AdminUser。
对于版主来说,一切都运行得很好。然而,普通用户遇到了问题。Discourse 仍然会尝试为所有用户加载此组件,由于普通用户不会加载任何 admin/** 模块,因此会导致以下错误:
Error: Could not find module `admin/models/admin-user`
理想情况下,我希望此子组件(甚至只是此导入)仅为版主和管理员加载。在 Discourse 中,是否有官方支持的方法来确保主题组件内的 Glimmer 组件仅为员工(版主/管理员)加载,以便普通用户永远不会遇到特定于管理员的导入的缺失模块错误?