类别特定免责声明

您好,欢迎回来!

如果看到空白,那是因为您遇到了错误。helper 中不存在 find
通常可以在浏览器控制台 (F12) 中看到。

您可能想要类似这样的代码:

api.decorateWidget('post:before', (helper, args) => {
    if (helper.widget.model.topic.category_id === 51) {
        return helper.h("div.disclaimer", settings.MY_DISCLAIMER)
    }
});

或者使用原始 HTML:

const RawHtml = require("discourse/widgets/raw-html").default;

api.decorateWidget('post:before', (helper, args) => {
    if (helper.widget.model.topic.category_id === 51) {
         return new RawHtml({html: `<div class="container">${settings.MY_DISCLAIMER}</div>`})
    }
});

您可以阅读这篇帖子,了解这个 h 助手是如何工作的。

如果您想在已烹饪内容之前添加一些 HTML,可以这样做:

api.decorateWidget('post-contents:before', (helper, args) => {
    const { topic } = helper.widget.findAncestorModel();

    if (topic && topic.category_id === 51) {
         return helper.h("div.disclaimer", settings.MY_DISCLAIMER);
    }
});
3 个赞