首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用指令(组件)创建按钮组

使用指令(组件)创建按钮组
EN

Stack Overflow用户
提问于 2016-06-16 05:55:52
回答 1查看 737关注 0票数 3

所以所有东西都应该是一个component

假设我定义了一些按钮组件来编辑/删除/查看我的域对象。举个例子:

代码语言:javascript
复制
angular.module('xxx').component('editButton', {
  bindings: {domainObject: '<'},
  template: '<button class="btn btn-default" ng-click="$ctrl.displayEditForm()">Edit</button>'
  controller: /* ... */
});

我把它当做:

代码语言:javascript
复制
<edit-button domain-object="$ctrl.myDomainObject"></edit-button>

效果很好!但是,当我需要一个特定的标记(例如button group)时,我会尝试这样做:

代码语言:javascript
复制
<div class="btn-group">
  <edit-button domain-object="object"></edit-button>
  <delete-button domain-object="object"></delete-button>
</div>

当然,Bootstrap不能正确显示它,因为我的按钮与组件定义一起包装。

记住replace functionality is deprecated,我想知道如何克服这个问题?

EN

回答 1

Stack Overflow用户

发布于 2016-06-16 06:31:35

组件并不总是html元素。它可以是(并且通常是一组html元素)

您的组件模板应该包括周围的div btn-group。

代码语言:javascript
复制
template: '<div class="btn-group"><button class="btn btn-default" ng-click="$ctrl.displayEditForm()">Edit</button>'...etc.

现在,如果你想单独重用按钮,你可以直接重写bootstrap的样式,这样它们就不会使用'>‘

代码语言:javascript
复制
.your-page .btn-group .btn:first-child:not(:last-child):not(.dropdown-toggle) {
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}

而不是

代码语言:javascript
复制
.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle) {
        border-top-right-radius: 0;
        border-bottom-right-radius: 0;
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37846473

复制
相关文章

相似问题

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