以编程方式(不通过模板)渲染组件

时间:2018-11-13 21:30:41

标签: javascript ember.js

我正在开发一个Ember应用程序,该应用程序与具有自己的自定义UI组件的单独的SDK集成在一起。例如,

<integration-name-customer-view customer-name="Bob">

这些组件具有渲染生命周期挂钩,例如onRenderonCreate等。

我想加入onRender回调并插入我创建的Ember组件(具有某些特殊功能的工具提示)。

这是我尝试过的:

集成客户名称定义

import MyTooltip from 'ember-app/components/my-tooltip';    

...

onRender() {
    let parent = this;

    MyTooltip
        .extend({
            layout: myTemplate,
            didRender() {
                parent.appendChild(this.element);
            }
        })
        .create({ position: 'above' })
        .appendTo(document.body);
}

现在,这确实有效,但是我有两个问题:

  1. 这是正确的做法吗?有没有更简单的方法/它会崩溃并燃烧吗?
  2. 我的模板中有一个{{yield}}块。有没有办法以编程方式确定要在该块中渲染什么?

0 个答案:

没有答案