Пользовательский элемент Aurelia, не предназначенный только для HTML, не отображается

У меня есть простой пользовательский элемент, но он не отображается.

Если я это сделаю <require from = "./myfooter.html"></require>, то он отобразит только часть html. Но если я это сделаю <require from = "./myfooter"></require>, то ничего не рендерится.

Что я делаю неправильно?

    @inject(ConfigService)
export class MyFooterCustomElement{
    private version: string;
    constructor(
        private configService: ConfigService) {
        this.getVersion()
    }



<template>
    <footer class = "footer fixed-bottom d-flex justify-content-between">
        <span class = "p-2 ml-40">text</span>
        <span class = "text-muted d-flex p-2">v${version}</span>
    </footer>
</template>
    async getVersion() {
        this.version = await this.configService.getVersion();
    }
}

🤔 А знаете ли вы, что...
Aurelia имеет активное сообщество разработчиков и обширную документацию.


1
42
1

Ответ:

Решено

Рендеринг aurelia по умолчанию основан на соглашении об именах.

переименуйте класс с MyFooterCustomElement на MyFooter

также: при использовании TS вы можете писать @autoinject() вместо @inject(ConfigService).