Ember.js查看没有包装Div?

Joh*_*all 23 ember.js ember-1

我的应用程序中有3列布局.我正在使用语义UI.所以,布局是:

<div class='ui celled grid'>
  <div class='left column'>...</div>
  <div class='middle column'>...</div>
  <div class='right column'>...</div>
</div>
Run Code Online (Sandbox Code Playgroud)

所以,直截了当.

在我application.hbs看来它很简单:

<div class='ui celled grid'>
  <div class='left column'><!-- menu --></div>
  {{outlet}}
</div>
Run Code Online (Sandbox Code Playgroud)

其他2列在我的子控制器/模板中.这工作正常,直到我需要一个View.如果我需要一个View,那么Ember使HTML布局变为:

<div class='ui celled grid'>
  <div class='left column'><!-- menu --></div>
  <div class='ember-view'>
    <div class='middle column'><!-- content --></div>
    <div class='right column'><!-- content --></div>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

包装<div class='ember-view'>破坏了我的布局.因为我并不总是需要一种View方法来使HTML与相同或不相同View.

在这一点上,我看到了2个解决方案.我要么必须以某种方式重新设计我的布局(我还没有解决).或者我可以摆脱包装div.

但是有可能摆脱包装div吗?我试过这个:

export default Ember.View.extend({
  tagName: null
});
Run Code Online (Sandbox Code Playgroud)

但这不起作用.我也试过了span,但这仍然打破了我的布局.

有任何想法吗?

谢谢.

Hri*_*shi 41

尝试使用

tagName:''
Run Code Online (Sandbox Code Playgroud)

空字符串作为视图上tagName的值.

更新:当我提请ember.js贡献者注意时,他们建议继承视图

Ember._MetamorphView
Run Code Online (Sandbox Code Playgroud)

https://github.com/emberjs/ember.js/pull/4790