Kann "post-avatar" nicht auf dem "topic-above-post-stream" Plugin-Outlet montieren

Nachdem ich diese Anleitung „Anfängerleitfaden zur Entwicklung von Discourse-Themes“ durchgearbeitet hatte, versuchte ich, das Post-Avatar-Widget im Plugin-Outlet „topic-above-post-stream“ auf der Beitragsseite zu montieren, aber es wurde nicht auf der Seite angezeigt.

Unten ist der Code, den ich hinzugefügt habe

<script type="text/x-handlebars" data-template-name="/connectors/topic-above-post-stream/post-page">
    <div class="post-detail">
      {{mount-widget widget="post-avatar"}}
    </div>
</script>

Fehlt mir etwas?

1 „Gefällt mir“

Sie vermissen wahrscheinlich Attribute, die das Widget benötigt, um angezeigt zu werden … zum Beispiel, woher weiß es, welchen Benutzer Sie in diesem Kontext anzeigen möchten?

Wenn man sich das ursprüngliche Widget hier ansieht:

erwartet es:

  • template
  • username
  • name
  • url

Sie müssten also die gewünschten Daten in Ihr Plugin-Outlet bekommen und sie dann an das Widget übergeben … so etwas wie

{{mount-widget widget="post-avatar" args=(hash username=this.username)}}

… was versuchen Sie genauer zu erreichen? Wenn Sie nur einen Avatar anzeigen möchten, ist die Verwendung des Avatar-Helpers möglicherweise besser geeignet … das würde so aussehen:

{{avatar user imageSize="large"}}

In diesem Fall müssten Sie immer noch sicherstellen, dass user vorhanden ist, da dies angibt, welcher Benutzer angezeigt werden soll.

3 „Gefällt mir“

Hallo @awesomerobot

Vielen Dank für Ihre Antwort.

Ich beabsichtige, den Benutzeravatar über dem Text jedes Beitrags auf der Beitragsseite anzuzeigen. Es ist mir jedoch nicht gelungen, die benötigten Benutzerdaten in den „topic-above-post-stream“-Plugin-Outlet zu bekommen. Daher wird nach dem Hinzufügen des unten stehenden Codes in die Datei common/head_tag.html ein Mülleimersymbol im „topic-above-post-stream“-Plugin-Outlet angezeigt.

<script type="text/x-handlebars" data-template-name="/connectors/topic-above-post-stream/custom-post-page">
    <div class="post-detail header">
      {{mount-widget widget="post-avatar" args=(hash username=this.username)}}
    </div>
</script>