24

我的应用程序中有 3 列布局。我正在使用语义用户界面。所以,布局是:

<div class='ui celled grid'>
  <div class='left column'>...</div>
  <div class='middle column'>...</div>
  <div class='right column'>...</div>
</div>

所以,直截了当。

在我application.hbs看来,这很简单:

<div class='ui celled grid'>
  <div class='left column'><!-- menu --></div>
  {{outlet}}
</div>

其他 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>

包装<div class='ember-view'>打破了我的布局。因为我并不总是需要 aView我需要一种方法来使带有或不带有View.

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

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

export default Ember.View.extend({
  tagName: null
});

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

有任何想法吗?

谢谢。

4

1 回答 1

43

尝试使用

tagName:''

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

更新:当我提请 ember.js 贡献者注意这一点时,他们建议从

Ember._MetamorphView

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

于 2014-04-29T16:55:40.287 回答