Show post numbers

素晴らしい!やり方を理解しましたね。 :+1:

いくつか改善点があります。

  • api.decoratedCooked は非推奨となり、すべての投稿で呼び出されます。
    代わりに decorateCookedElement を使用できます。これは jQuery なしで動作します。

  • 現在の投稿を表す element が API に渡されます。これを投稿のコンテキストとして使用できます。

  • ember の schedule 関数を使用して、要素がレンダリングされるのを待つことができます。

import { schedule } from "@ember/runloop";
// const { schedule } = require("@ember/runloop"); // Admin UI で実行する場合はこちらを使用してください

api.decorateCookedElement((element, /* helper */) => {
  schedule("afterRender", () => {
    const article = element.closest("article");
    if (article) {
      article.dataset.postNumber = article.id.replace("post_", "");
    }
  });
});

image

「いいね!」 3