플러그인 아웃렛 관련 질문

사이트(사이트 헤더 위)에 배너를 추가하기 위해 테마 컴포넌트를 작성했는데, 동작은 하지만 채팅 패널이 표시될 때 문제가 발생합니다. 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>
  

참고로, 위젯은 점진적으로 폐지되고 있으며 에임버 컴포넌트(ember components)로 대체되고 있습니다. 하지만 당분간은 계속 작동할 것입니다.

문제가 채팅 플러그인이 여전히 설치되어 있는 것과 관련이 있는 것 같습니다. 코어에 병합되었을 때 app.yml에서 해당 플러그인을 제거하지 않았었거든요.

해당 줄을 제거하면 정상적으로 작동하지만, 여전히 채팅 작성기가 Discourse Tab Bar for Mobile에 의해 가려지는 작은 문제가 있습니다.

플러그인을 app.yml에서 제거한 후 문제가 해결되었다는 소식을 전해줘서 기쁩니다 :slight_smile:

흥미롭네요. 여기에서 언급되었습니다: