::after 的 Angular ng 风格

Col*_*bhu 2 angularjs angularjs-ng-repeat ng-style

我正在设计一个动态的人力资源(水平)规则。

在我的样式表中

hr.my-hr:after{
   content:'Generic'
}
Run Code Online (Sandbox Code Playgroud)

在我的模板中

<div ng-repeat="name in ['Adam', 'Collin', 'David']">
<hr class="my-hr" ng-style="{'content':name}">
Run Code Online (Sandbox Code Playgroud)

但是使用 ng-repeat 时如何动态更改模板中的内容???

ste*_*425 5

所做的只是ng-style添加内联样式。但是您想添加一个伪元素::after。根据MDN

您只能在选择器中使用一个伪元素。它必须出现在语句中的简单选择器之后。

因此推断您不能内联使用它们,这可悲地意味着ng-style不能做您之后的事情。

但是,如果您的::after样式是在样式表中定义的,则可以使用ng-class动态添加该样式。

所以

<hr ng-class="{'my-hr': <some condition to evaluate>}" />
Run Code Online (Sandbox Code Playgroud)

大多数情况下就足够了。然而看起来想要动态content设置::after. 因此我只能想象两种选择。

如果您只想简单地添加字符串值,请使用数据绑定

<hr />
{{name}}
Run Code Online (Sandbox Code Playgroud)

但是,如果您想在该字符串上添加额外的样式,请创建一个小指令,因为可重用的小部件可能是更好的选择。