ユーザー投稿の文字列を置換/自動フォーマットしようとしています

こんにちは。Discourseは初めてで、サイトを立ち上げたばかりなのですが、コミュニティの大部分で必要となる重要な機能について理解しようとしています。

ユーザーは、ゲームの状態を表すマジック文字列をエクスポートできるソフトウェアを持っており、その文字列から(ページ読み込み時に)生成されるテーブルとしてその状態をきれいにレンダリングしたいと考えています。

理想的には、投稿時にテンプレートを提供するか、ユーザーがマジック文字列を名前付きクラスなどの中に入れると、ページ読み込み時に文字列がレンダリング(装飾?)されるようにしたいです。

これは可能でしょうか?現在、すべての要素/クラスをそのタイプで解析するスクリプトを作成することを考えていますが、表示される(調理済みの?)投稿を変更するスクリプトをいつ、どのように実行すればよいのか苦労しています。

よろしくお願いします。
Brett

「いいね!」 1

はい、可能です。調理済みの投稿を装飾するためのAPIがあります。
例:decorateCookedElement

具体的に何を達成しようとしているのか、視覚的な例を共有していただけますか?

「いいね!」 1

独自のスタイルを作成できるかもしれません

「いいね!」 1

承知しました! @Arkshine さんの指摘通り、decorateCookedElement が必要だったようです。

また、興味のある要素でフィルタリングするための良い例がいくつか載っているこちらの投稿も見つけました。
How do we fire scripts after topic HTML is rendered in DOM? - dev - Discourse Meta

特に、こちらが非常に役立ちました。

$.fn.doSomething = function() {
  const targetElement = $(this).children("[data-theme-test]").length;
  if (!targetElement) return;

  // do your work
  
  return this;
};

api.decorateCooked($elem => $elem.doSomething(), { onlyStream: true });

ありがとうございました!

「いいね!」 2

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.