繁体   English   中英

Angular 1.5组件元素的ng-class

[英]ng-class on Angular 1.5 component element

我正在将一些指令转换为组件,并试图消除额外的“包装”元素,因为replace: true不再起作用。 但是,旧的包装元素上有一个ng-class。

<some-directive>
    <div ng-class="{classOne: someDirectiveCtrl.isClassOne}">
        <p>...</p>
    </div>
</some-directive>

在该示例中,使用replace: true ,div成为“包装”元素。

<div ng-class="{classOne: someDirectiveCtrl.isClassOne}">
     <p>...</p>
</div>

所以...

有没有办法访问组件控制器中的信息,以便将类添加到组件的元素?

<some-component ng-class="{classOne: someComponentCtrl.isClassOne}">
    <p>...</p>
</some-component>

我宁愿不在父控制器中放置组件的函数,我想在HTML中列出这些类。

您需要使用ng-controller而不是ng-class 将控制器分配到ng-controller ,然后使用您的班级。

组件始终使用隔离范围,这是外部世界无法访问的。 你将不得不放弃ng-class提供的漂亮的声明性方法,而是使用组件控制器中的可用$元素。

我们放弃并重新组织了html和css,这不是问题。 :(

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM