如何将不同的类传递给元素指令

Posted

技术标签:

【中文标题】如何将不同的类传递给元素指令【英文标题】:How to pass in different classes to a element directive 【发布时间】:2015-07-18 10:07:00 【问题描述】:

我有一个元素directive,可以重复使用。 但是background-color需要根据使用情况更改。 因此,每次调用directive 时,都需要将一个类动态注入directive

directive 名字是tabset

标签集模板:

<ul>
  ........ html STUFF .......
</ul>

我需要在这个&lt;ul&gt; 标签上添加类。

我希望得到关于创建attribute 指令的答案,该指令可以传递到tabset 指令上。 如下图所示:

第一个例子

<tabset colorblack>
</tabset>

第二个例子

<tabset colororange>
</tabset>

其中colorblackcolororange 将是属性directives

如果这样的事情不可行,那么请提出正确的答案请注意: 尽管我提到了改变颜色,但说到实时,它不仅仅是改变颜色,所以我肯定需要传入class 如果问题不清楚,请告诉我。提前致谢

【问题讨论】:

只要让属性 color='orange' 或 color='black' 它不仅仅是颜色.....所以我需要通过一个类.. 然后把它当作一个类使用,只要使用相同的属性并在指令中处理即可 【参考方案1】:

其实很简单,你真的不需要指令。

你这样做:

<tabset tab-class="colorblack">
</tabset>

并且在您的指令中(假设隔离范围):

scope: 
    tabClass: "@"

在您的 HTML 中:

<ul class="tabClass">
   ....
</ul>

【讨论】:

即使我认为这应该工作............但不工作。 tabclass 无法在 HTML 中解析...嗯,让我看看

以上是关于如何将不同的类传递给元素指令的主要内容,如果未能解决你的问题,请参考以下文章

c ++将不同的类传递给函数

为 Angular 指令添加多个“要求”选项

如何将参数从 Python 3.x 中的类定义传递给元类?

如何使用 Angular 中的依赖注入将属性指令实例传递给嵌套组件

将parcelables的数组列表传递给不同的活动? [复制]

如何将多个属性传递给 Angular.js 属性指令?