gpt4 book ai didi

javascript - 此 html 代码的 DRY 一致性

转载 作者:太空宇宙 更新时间:2023-11-04 11:07:36 25 4
gpt4 key购买 nike

此代码使用 angularjs ng-table 模块在表格中显示值。

相关的html代码如下所示;

<div ng-controller="ViewCtrl" class="container">
<table ng-table="tableParams" class="table table-bordered">
<thead>

<tr>
<th>price_alert</th>
<th>lastPrice</th>
</tr>

<thead>
<tbody>
<tr ng-repeat="item in $data">
<td data-title="'price_alert'" ng-class="{ red: item.lastPrice < stk.price_alert }>
${{item.price_alert}}
</td>
<td data-title="'lastPrice'" ng-class="{ red: item.lastPrice < stk.price_alert }>
${{item.lastPrice}}
</td>
</tr>
</tbody>
</tbody>
</table>
</div>

CSS代码;

.red { color: red; }

Controller 代码;

controller('ViewCtrl', ['$scope', '$http', 'moment', 'ngTableParams',
function ($scope, $http, $timeout, $window, $configuration, $moment, ngTableParams) {
var tableData = [];
//Table configuration
$scope.tableParams = new ngTableParams({
page: 1,
count: 100
},{
total:tableData.length,
//Returns the data for rendering
getData : function($defer,params){
var url = 'http://127.0.0.1/list';
$http.get(url).then(function(response) {
tableData = response.data;
$defer.resolve(tableData.slice((params.page() - 1) * params.count(), params.page() * params.count()));
params.total(tableData.length);
});
}
});
}])

在html代码中,重复了这个条件来显示文字颜色ng-class="{ red: item.lastPrice < stk.price_alert .如果可能,如何修改代码以保持 DRY(不要重复自己)原则?

最佳答案

听起来您只想消除单个额外的“红色”类声明。为此,请像这样将您的 ng-class 放在 tr 中:

    <tr ng-repeat="item in $data" ng-class="{ red: item.lastPrice < stk.price_alert }">
<td data-title="'price_alert'">
${{item.price_alert}}
</td>
<td data-title="'lastPrice'">
${{item.lastPrice}}
</td>
</tr>

然后将您的 css 更改为:

.red td { color: red; }

您不能使用此 css 在该行内嵌套额外的表格,但我猜您不需要这样做。

关于javascript - 此 html 代码的 DRY 一致性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33852207/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com