Javascript 如何使用angularjs过滤器在标题上添加排序?

Javascript 如何使用angularjs过滤器在标题上添加排序?,javascript,html,angularjs,Javascript,Html,Angularjs,我想在日期标题上添加排序功能,我添加了orderBy过滤器,但它破坏了列 如何将排序添加到日期标题?我希望用户可以单击标题,这将更改排序顺序 main.html <table> <tr> <th>File</th> <th>{{date | orderBy: file.fileStat}}</th> <th>Download</th>

我想在日期标题上添加排序功能,我添加了
orderBy
过滤器,但它破坏了列

如何将排序添加到日期标题?我希望用户可以单击标题,这将更改排序顺序

main.html

   <table>
    <tr>
        <th>File</th>
        <th>{{date | orderBy: file.fileStat}}</th>
        <th>Download</th>
    </tr>
    <tr ng-repeat="file in data">
        <td>{{file.filename}}</td>
        <td>{{file.fileStat |date : "dd.MM.y"}}</td>
        <td><button type="button" class="btn btn-primary" ng-click="downloadServerFile(file.filename)">download</button></td>
    </tr>
</table>

文件
{{date | orderBy:file.fileStat}
下载
{{file.filename}
{{file.fileStat}日期:“dd.MM.y”}
下载

您尝试的语法中有一些错误,但您已经有了一个良好的开端

第一个错误是,
orderBy:
仅适用于
ng repeat
指令

让我们首先更改
{{date}

接下来,让我们看看
ng repeat
。有两件事对我们有用。请参阅:

因此,我们可以用一个字符串来告诉它该在哪个字段上排序,并用一个布尔值来告诉它是否颠倒顺序。我们可以试试这样的东西

我们还应该将布尔值设置为一个变量,这样我们就可以跟踪用户何时更改它

最后,让我们进行一次
ng单击
,以允许用户更改顺序。在本例中,我将在
上设置它

{{date}



请尝试此操作,如果您遇到任何错误,请告诉我。

您尝试的语法中有一些错误,但您已经有了一个良好的开端

第一个错误是,
orderBy:
仅适用于
ng repeat
指令

让我们首先更改
{{date}

接下来,让我们看看
ng repeat
。有两件事对我们有用。请参阅:

因此,我们可以用一个字符串来告诉它该在哪个字段上排序,并用一个布尔值来告诉它是否颠倒顺序。我们可以试试这样的东西

我们还应该将布尔值设置为一个变量,这样我们就可以跟踪用户何时更改它

最后,让我们进行一次
ng单击
,以允许用户更改顺序。在本例中,我将在
上设置它

{{date}



请尝试一下,如果遇到任何错误,请告诉我。

您所说的“排序功能”是什么意思?您希望表格按日期排序,还是希望用户能够自定义排序?用户要自定义排序,只需按日期列您所说的“排序功能”是什么意思?您希望您的表格按日期排序,还是希望用户能够自定义排序?用户自定义排序,仅在日期列感谢您的详细解释!这很有帮助。谢谢你的详细解释!这有帮助。