0

我有一个用例,我可以将子组件动态移动到同一页面/路由中的不同 DOM 位置。

主页.hbs

<div class="container">
  <div class="content">
    <!-- Place where I want to place Child -->
   </div>
</div>
<Parent></Parent>

父母.hbs

<h1>This is parent component</h1>
<Child></Child>

儿童.hbs

Hello World

child.js

const mainContainer = document.querySelector('.container .content');
const myElm = this.element.querySelector('[data-child-content]');
mainContainer.appendChild(myElm);

我想使用ember-maybe-in-element插件而不是使用appendChild.

4

1 回答 1

1

in-element helper 将常规流之外的块内容呈现到由它的destinationElement 位置参数给出的DOM 元素中。

child.js

get destinationElement() {
  return document.querySelector('.container .content');
}

儿童.hbs

{{#in-element this.destinationElement}}
   <div>Hello World</div>
{{/in-element}}
于 2020-10-20T19:22:36.540 回答