首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ember组件不是向右浮动的

Ember组件不是向右浮动的
EN

Stack Overflow用户
提问于 2014-04-27 07:50:07
回答 2查看 129关注 0票数 0

我有一些ember代码:

代码语言:javascript
复制
{{#each this}}
    <div class="item">
      <div class="right floated tiny blue ui label">{{status}}</div>
      <div class="content">
        <div class="header"><a>{{id}} - {{name}}</a></div>
        <small>last updated {{pretty-date lastUpdated}}, currently assigned to {{title-case owner.name}}</small>
      </div>
    </div>
 {{/each}}

这很好用。我的状态显示在右侧,项目id和名称显示在左侧。

我想对状态做一些额外的事情,所以我将它移到一个组件中。

代码语言:javascript
复制
{{#each this}}
    <div class="item">
    {{labeled-stat status=status}}
      <div class="content">
        <div class="header"><a>{{id}} - {{name}}</a></div>
        <small>last updated {{pretty-date lastUpdated}}, currently assigned to {{title-case owner.name}}</small>
      </div>
    </div>
 {{/each}}

然后是我的component.hbs

代码语言:javascript
复制
<div class="right floated tiny blue ui label">{{status}}</div>

当这个显示出来的时候,我会得到一个额外的div来表示状态

代码语言:javascript
复制
<div class="ember408">

这导致我的项目不能正确显示。因为ember添加了一个新的div,所以我的状态实际上是在左边。

有没有办法在不改变css的情况下解决这个问题?

EN

回答 2

Stack Overflow用户

发布于 2014-04-27 08:19:26

看起来我需要将css从hbs组件文件移到模板中:

代码语言:javascript
复制
{{labeled-stat status=status class="right floated tiny blue ui label"}}
票数 1
EN

Stack Overflow用户

发布于 2014-04-27 08:34:37

您可以使用classNames属性更改生成的div的类名。这样,您就不需要在每次使用组件时都传递class

模板:

代码语言:javascript
复制
<script type="text/x-handlebars" data-template-name="components/labeled-stat">
  {{status}}
</script> 

组件:

代码语言:javascript
复制
App.LabeledStatComponent = Ember.Component.extend({
  classNames: "right floated tiny blue ui label".w()
});

用法:

代码语言:javascript
复制
{{labeled-stat status=status}}

我希望它能帮上忙

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/23317795

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档