AngularJS过滤器模板绑定语法 - 不像docs?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了AngularJS过滤器模板绑定语法 - 不像docs?相关的知识,希望对你有一定的参考价值。
因此,当浏览angularJS文档时,我注意到各种过滤器模板是这样的:
{{date_expression |日期:日期:格式}}
date:date是什么意思?
如果我运行以下代码:(JS Fiddle http://jsfiddle.net/6Jt4h/2/)
html:
<div ng-app="testApp" ng-controller="testCon">
{{dt1 | date : 'MM/dd/yyyy @ h:mma'}}<br>
{{dt1 | date : dt1 : 'MM/dd/yyyy @ h:mma'}}
</div>
使用javascript:
var testApp = angular.module('testApp', []);
testApp.controller('testCon', function($scope) {
$scope.dt1 = new Date();
});
我得到以下输出:
03/20/2014 @ 3:19PM
T3u 3PMr 20 2014 15:19:46 G3T-0500 (CentrPMl DPM2014lig3t Ti19e)
为什么第二行不能正常工作,即使它看起来是遵循语法的属性?
我是否理解正确的语法是:
{{date_expression |日期格式}}
答案
你似乎是对的。文档是错误的,正确的语法实际上是{{date_expression|date:format}
。
关于这个错误的一些背景:Angular中的过滤器被实现为基本功能,所以你可以把它想象成像function date(date, format)
。但是,当用作过滤器时,第一个参数实际上是管道之前的值。 (在这种情况下,data_expression
)
你应该submit a pull request to improve this doc。否则我会,我会认为找到问题:)
以上是关于AngularJS过滤器模板绑定语法 - 不像docs?的主要内容,如果未能解决你的问题,请参考以下文章