插件插座问题

我编写了一个主题组件,用于在我的网站(网站标题上方)添加一个横幅,它能正常工作,但当聊天面板出现时:1)在桌面上,聊天标题会被网站标题覆盖;2)在移动设备上,聊天输入框会被推到屏幕外(低于视口)。

有什么方法可以解决这个问题吗?我假设插件没有正确初始化,所以聊天抽屉无法检测到它,但不知道解决方案。

提前感谢。

<script type="text/discourse-plugin" version="0.8">
const h = require("virtual-dom").h;

let user = api.getCurrentUser();

api.createWidget("general-banner", {
    tagName: "div",
    html() {
        if ( !user || (user && !user.custom_fields.user_field_2  )) {
            return [
            //content
            ];
        }
    }
});

</script>

<script type="text/x-handlebars" data-template-name="/connectors/above-site-header/general-banner">
 {{mount-widget widget="general-banner"}}
 
</script>
  
1 个赞

需要补充说明一点——我认为小部件(widgets)正在逐步被 Ember 组件(components)取代,但它们在一段时间内仍然可以使用。

3 个赞

我发现问题似乎与仍然安装了聊天插件有关,在合并到核心时我没有从 app.yml 中删除它。

删除该行后,它就可以工作了,但仍然存在一个小问题,即聊天编辑器有时会被 Discourse Tab Bar for Mobile 覆盖。

很高兴看到在从 app.yml 中删除插件后问题已得到修复 :slight_smile:

有趣。这个问题在这里被提出过:

一个帖子已合并到现有主题:Discourse Tab Bar for Mobile