我使用orderby过滤器来对我的产品进行排序。但是它无法正常工作。请帮我找出问题所在。 杰森:
productSize :: [{“prodsize”:“DOUBLE”,“sizerate”:“181.00”},{“prodsize”:“FAMILY”,“sizerate”:“316.00”},{“prodsize”:“SOLO ”, “sizerate”: “79.00”}]
代码:
<div class="item" style="border: 0px; padding: 7px"
ng-repeat="size in productSize | orderBy:'sizerate'">
<div class="row">
<div class="col" style="margin-top: 20px">{{size.prodsize}}</div>
<div class="col" style="text-align: right">
Rs.{{size.sizerate}} <label class="checkbox" style="top: 16px"><input value="true"
name="size" type="radio" ng-model="sizeChecked" ng-change="addPropertiesToProduct('Size',size.prodsize,size.sizerate,sizeChecked)"></label>
</div>
</div>
</div>
答案 0 :(得分:1)
orderBy
过滤器正在运行。您的问题来自于sizerate
属性是字符串而不是数字,因此:
"181.00" < "316.00" < "79.00"
更正您的数据结构以获得所需的结果。
答案 1 :(得分:1)
只需改变你的json,
[{"prodsize":"DOUBLE","sizerate":181.00},{"prodsize":"FAMILY","sizerate":316.00},{"prodsize":"SOLO","sizerate":79.00}]
工作JSFiddle