Замените контейнерный элемент при использовании компонента Knockout

Есть ли способ настроитьКомпонент нокаута взамещать элемент контейнера вместо того, чтобы вкладывать его содержимое в элемент контейнера?

Например, если у меня есть пользовательский компонент, зарегистрированный какmy-custom-element со следующим шаблоном:

<tr>
    <p>Hello world!</p>
</tr>

Можно ли использовать компонент следующим образом:

<table>
    <tbody>
        <my-custom-element></my-custom-element>
    </tbody>
</table>

И пусть конечный продукт будет таким:

<table>
    <tbody>
        <tr>
            <p>Hello world!</p>
        </tr>
    </tbody>
</table>

Вместо этого: (способ, которым Knockout отображает компоненты по умолчанию)

<table>
    <tbody>
        <my-custom-element>
            <tr>
                <p>Hello world!</p>
            </tr>
        </my-custom-element>
    </tbody>
</table>

На основании ответа на этот вопросПохоже, что эта функциональность встроена в шаблонизатор, который, как я полагаю, также используется при визуализации шаблонов компонентов.

Есть ли способ указать, что компонент должен отображаться сrenderMode изreplaceNode?

Мне известен синтаксис «виртуального элемента», который позволяет определять компоненты внутри комментария HTML:

<table>
    <tbody>
        <!--ko component { name: 'my-custom-element' }--><!--/ko-->
    </tbody>
</table>

но мне действительно не нравится этот синтаксис - написание реального кода внутри комментария кажется грязным, грязным хаком.

Ответы на вопрос(1)

Ваш ответ на вопрос