Должно быть, я делаю что-то очень глупое, но не могу этого заметить. Надеюсь, что публикация здесь поможет мне увидеть ошибку, чтобы я мог удалить этот пост, прежде чем кто-то другой узнает, насколько я глуп.
«HELLO WORLD» должно отображаться на главной странице. В консоли я вижу «THIS IS THE HOMEPAGE». Знаю, что код выполняется. Но его нет на странице.
Затем я попробовал добавить «Extra item», потому что у меня не было других идей. Это тоже не отображается.
До переименования файла в .gjs я получал ошибки, так что это ещё одно доказательство того, что система обращает внимание на файл и что-то делает.
import { apiInitializer } from "discourse/lib/api";
export default apiInitializer("1.8.0", (api) => {
// проверяем, находимся ли мы на главной странице
api.onPageChange(() => {
const router = api.container.lookup("service:router");
const url = router?.currentURL;
const isHomePage = url === "/";
api.renderInOutlet("top-notices", <template>Extra item</template>);
if (isHomePage) {
console.log("THIS IS THE HOMEPAGE");
api.renderInOutlet("after-header", <template>HELLO WORLD</template>);
}
});
});