JavaScript HTML - 위젯

위젯 반환:

api.decorateWidget에 자체 커스텀 위젯을 반환하는 방법을 사용할 수 있습니다. 이렇게 하면 속성, 상태, 동작 등에 대해 훨씬 더 많은 제어권을 가질 수 있습니다.

다음과 같이 구현할 수 있습니다:

api.decorateWidget('menu-links:before', helper => {
   return helper.widget.attach("custom-menu-links");
});

그 다음 javascripts/discourse/widgets/custom-menu-links.js 파일에서 createWidget 헬퍼를 사용하여 위젯을 생성합니다:

import { createWidget } from 'discourse/widgets/widget';

createWidget('custom-menu-links', {
...
});

위젯의 일부 기능을 학습하려면 이 토픽을 확인해 보세요:

드롭다운 헤더 테마 컴포넌트에서 위젯을 상당히 많이 사용했는데, 일부 코드가 도움이 될 수 있습니다.

target=“_blank” 추가

attributes 객체에 추가하면 됩니다:

      return helper.h('a.google',
        {
          attributes: {
            href: "https://google.com",
            target: "_blank",
            title: "Google"
          },
        }
        ...
      );