0

我在 angularjs 中有一个应用程序,它在后台使用 $interval() 并每秒通过 PHP 从数据库中请求数据。

然后我使用 track by $index ,这确实有助于提高性能。

<tr ng-repeat="user in users track by $index">
<td>{{user.name}}</td>
</tr>

但是当数据发生变化时,我想将文本颜色更改 1 秒<td>

4

2 回答 2

0

可能你可以试试

<td ng-style="{color:#000}">{{user.name}}</td>

请记住,数据将每秒重新加载。

或者,您可以使用条件跟踪从控制器更改的数据,并根据类似条件设置变量 true 或 false

$scope.datachange = true;

那么鉴于你可以做

 <td ng-style="datachange && {color:#000}">{{user.name}}</td>
于 2018-03-25T01:48:26.257 回答
0

我会做什么,而不是查看索引更改,而是在您希望颜色更改的地方放置一个 ng-class:

<tbody ng-class="{'changed-class': dataChanged}">

然后,在控制器中的数据更改后,将 $scope.dataChanged 的​​值更改为 true,然后在一秒钟后通过注入 $timeout 将其更改为 false:

$scope.dataChanged = true;
$timeout(function(){
    $scope.dataChanged = false;
}, 1000);

当然,在您的 CSS 中添加更改后的类,并在更改发生时使用您希望文本的颜色。

于 2018-03-25T03:49:49.567 回答