使用ember-maybe-in-element将组件移动到另一个DOM节点

htrmnn0y  于 2022-11-23  发布在  其他
关注(0)|答案(1)|浏览(162)

我有一个用例,可以动态地将子组件移动到同一页面/路由中不同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

子文件.js

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

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

wqnecbli

wqnecbli1#

元素内帮助器将块内容呈现在常规流之外,呈现到由其destinationElement位置参数给定的DOM元素中。

子文件.js

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

子项.hbs

{{#in-element this.destinationElement}}
   <div>Hello World</div>
{{/in-element}}

相关问题