Angularjs 如何编写依赖于本机角度过滤器的自定义过滤器
我想编写一个依赖于本机角度过滤器的自定义过滤器。例如,我有一个可为空的C日期,我正在MVC中传递给我的视图,我想将其转换为Angularjs 如何编写依赖于本机角度过滤器的自定义过滤器,angularjs,angularjs-filter,Angularjs,Angularjs Filter,我想编写一个依赖于本机角度过滤器的自定义过滤器。例如,我有一个可为空的C日期,我正在MVC中传递给我的视图,我想将其转换为'MM/dd/yyyy',如果它有值,则显示无 Html: <div>{{ myNullableDate | nullableDate }}</div> app.filter('nullableDate', function() { return function(dt) { if (dt) { // dt is something li
'MM/dd/yyyy'
,如果它有值,则显示无
Html:
<div>{{ myNullableDate | nullableDate }}</div>
app.filter('nullableDate', function() {
return function(dt) {
if (dt) { // dt is something like "/Date(1430341152570)/"
var jsonDate = new Date(parseInt(dt.substr(6)));
return jsonDate | date:'MM/dd/yyyy'; // <-- This is where I want to use Angular's existing `date:'format'` filter
}
// date is null, so just return None in italics
return "<i>None</i>";
};
});
{{myNullableDate}
Js:
<div>{{ myNullableDate | nullableDate }}</div>
app.filter('nullableDate', function() {
return function(dt) {
if (dt) { // dt is something like "/Date(1430341152570)/"
var jsonDate = new Date(parseInt(dt.substr(6)));
return jsonDate | date:'MM/dd/yyyy'; // <-- This is where I want to use Angular's existing `date:'format'` filter
}
// date is null, so just return None in italics
return "<i>None</i>";
};
});
app.filter('nullableDate',function(){
返回函数(dt){
如果(dt){//dt类似于“/Date(1430341152570)/”
var jsonDate=新日期(parseInt(dt.substr(6));
return jsonDate | date:'MM/dd/yyyy';//您可以尝试使用$filter依赖项调用现有筛选器:
$filter('existed_filter_name')(arg1,arg2);
参见相应的。参见
app.filter('nullableDate',函数($filter){
返回函数(dt){
如果(dt){//dt类似于“/Date(1430341152570)/”
返回$filter('date')(dt,'MM/dd/yyyy');
}
//date为空,因此只需以斜体形式返回None
返回“无”;
};
});
您可以使用$filter
服务访问日期筛选器
此外,如果希望筛选器的结果显示为html,则应使用ng bind html
指令,并使用$sce.trustAsHtml
返回结果(否则将看到字符串“None”作为输出):
.filter('nullableDate',函数($filter,$sce){
返回函数(dt){
如果(dt){//dt类似于“/Date(1430341152570)/”
var jsonDate=新日期(parseInt(dt.substr(6));
var格式=$filter('date')(jsonDate,'MM/dd/yyyy')//
<div ng-bind-html="myNullableDate | nullableDate"></div>