Ich habe folgenden Code mit showOpLikes hinzugefügt, habe aber Probleme damit. Auf irgendeine Weise werden die Like-Anzahlen der Originalbeiträge nicht sofort angezeigt. Dies geschieht erst, nachdem ich nach Likes sortiert und dann zurück zur neuesten Ansicht ohne Sortierung gewechselt bin.
Interessanterweise hat showLikes dieses Problem nicht.
<script>
var TopicListComponent = require('discourse/components/topic-list').default;
TopicListComponent.reopen({
showOpLikes: true
});
</script>
Hier ist ein Screenshot, bevor ich nach Likes sortiert habe und zur neuesten Ansicht zurückgekehrt bin:
Ich bin der Meinung, dass showOpLikes nur dann funktionieren sollte, wenn nach OP-Likes sortiert wird, indem eine URL wie https://meta.discourse.org/latest?order=op_likes aufgerufen wird. Andernfalls ist op_like_count nicht enthalten (showLikes sollte funktionieren, bezieht sich jedoch auf die Gesamtzahl des gesamten Themas).
Sie können dies beobachten, indem Sie https://meta.discourse.org/latest.json und https://meta.discourse.org/latest.json?order=op_likes aufrufen. op_like_count ist nur im zweiten Link verfügbar.
Das ist absichtlich so aufgebaut, aber der genaue Grund ist mir nicht bekannt. Ich vermute, es geht um Daten, die wir nicht bei jedem Seitenaufruf mitführen wollen.
Wir haben auch allgemein die Gesamtzahl der Likes innerhalb eines Themas als bessere Messgröße für die Diskussionsqualität betrachtet als nur den Beitrag des OP.
Nun, das hängt wohl von den Zielen der Community ab. Unsere Beiträge stellen Mathematikfragen und -aufgaben dar, daher möchten wir die am meisten gelikten sehen. Ich bin mir nicht sicher, ob Likes für Antworten berücksichtigt werden sollten. Hmm. Ich weiß es nicht.
Ich glaube, du musst etwas JavaScript hinzufügen, um OP-Likes zum Serializer zu integrieren. Wenn du nach “add to serializer” suchst (vielleicht ohne Leerzeichen), solltest du einige Beispiele finden.