如何获取生成的Ember.Component HTML

时间:2014-07-01 17:25:24

标签: ember.js components gridster

我正在使用Emberjs和Gridsterjs创建某种编辑器。我发现你需要在Emberjs中创建一个包含jQuery插件的组件。在该组件内部,我有许多组件将成为Gridster的小部件。

这就是我设置模板的方式:

<script type="text/x-handlebars">
  {{#create-gridster}}
    {{create-widget}}
  {{/create-gridster}}
</script>

<script type="text/x-handlebars" data-template-name="components/create-gridster">
  <button class="btn" {{action 'newWidget'}}>add widget.</button>
  <section class="gridster-wrapper">
    <div class="gridster">
      <ul id="gridster-list">
        {{yield}}
      </ul>
    </div>
  </section>
</script>

现在我已经创建了一个按钮,允许用户将一个小部件添加到Gridster,但是我找不到从该组件中为小部件提供所请求的HTML字符串的方法。

我试过这个:

this.get('gridster').add_widget(Ember.Handlebars.compile('{{create-widget}}'));

和此:

this.get('gridster').add_widget(App.CreateWidgetComponent.create().createElement());

但这看起来没有用。

问题
我的问题是如何创建gridster期望的html字符串并保留用于编辑内容的ember功能。

1 个答案:

答案 0 :(得分:0)

在myprettycms(myprettycms.codeplex.com)中,我使用gridster创建布局,然后编辑gridster li的内容,我在插槽上叠加一个小的mce,然后将插槽的内容转移到tinyMCE实例。 / p>

当它完成后,我会在插槽中转移TinyMCEContent。

请参阅:http://myprettycms.codeplex.com/SourceControl/latest#MyPrettyCMSCommunityManager/Portals/MVC4Portal/Scripts/Views/DynaContentAdmin.js