Javascript HTML - widget

Devolver un widget:

Lo que podrías hacer es devolver tu propio widget personalizado a api.decorateWidget, lo que te dará mucho más control en términos de aplicación de atributos, estado, acciones, etc.

Entonces podrías hacer:

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

Luego, dentro de javascripts/discourse/widgets/custom-menu-links.js, crea un widget usando el helper createWidget:

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

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

Echa un vistazo a este tema para aprender algunas de las características de los Widgets:

Utilicé widgets bastante en mi componente temático de encabezado desplegable, es posible que encuentres algo del código útil.

Añadir target=“_blank”

Lo añades al objeto de atributos:

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