В AureliaJS, как добавить / удалить представления из JS вместо разметки?

У меня есть несколько представлений / компонентов, которые реализуют пользовательские элементы, поэтому я использую их в своей разметке следующим образом:

  <require from="./panels/property_inspector/PropertyInspector"></require>
  <property-inspector--panel></property-inspector--panel>

Все идет нормально. Но теперь мне нужно добавить / удалить такие виды / компоненты программно. Я читал центр аурлии, но у меня ничего не получилось... Любой намек оценили.

1 ответ

В зависимости от того, что вы пытаетесь достичь, я согласен с @peinarydevelopment, что compose может быть полезным для вас. См сочинять документацию

Вы можете использовать <compose> элемент и связать view-model приписать свойство вашей модели представления. Это свойство должно указывать путь к модели представления или фактическому экземпляру модели представления, который был импортирован.

Пример:

app.html

<template>
  <h2>dynamic view model by path</h2>

  <button click.trigger="loadNewViewModel()">Load different vm</button>

  <compose view-model="${currentViewModel}"></compose>

</template>

app.js

export class App {

  currentViewModel = "test.js";

  loadNewViewModel(){
    this.currentViewModel = "new.js"
  }
}

Посмотреть эту суть: https://gist.run/?id=a2f17028d45ea202cd19be5491272dde

Другие вопросы по тегам