コードの最後に ); を付け忘れているため、エラーが発生しています。
以下のようなコードで動作するはずです(URIの解析については、多くの方法があるので気にしないでください)。
api.onPageChange((url) => {
if (location.pathname.split('/')[1] == "review") {
api.replaceIcon('check', 'full-circle-icon');
}
});
ただし、onPageChange は最初のページ読み込み時にはトリガーされないことに注意してください。ブラウザで直接 yourforum/reviews を開いた場合、onPageChange はトリガーされず、アイコンは置き換えられません。
最初のページ読み込み時とページ変更時の両方でアイコンを変更する方法はわかりません。APIメソッドがあるかもしれませんが、見つけられませんでした。![]()
さらに、アイコンを変更すると、ナビゲーション時に他のページでも変更されたままになるため、URLが /review でない場合はアイコンの変更を元に戻す必要があります。
要するに…完全に機能させるには、もう少し作業が必要だと思います。私はDiscourseのコードやJavaScriptの専門家ではないことに注意してください。より知識のある人がさらに助けてくれるかもしれません。
編集:最初のレビューに移動したときにコードが機能しないのは、ページが読み込まれ、アイコンが動的に変更されないためだと思います。したがって、別の方法を見つける必要があります。これ以上お手伝いできず申し訳ありません。![]()