2017-12-19 54 views
1

NULL 값이 ""(공백)으로 나타나는 날짜 값을 인쇄하려면 dojo/date/locale을 사용하려고합니다. 내가 작업중인 스크립트는 사용자가 부분적으로 만 완료 할 수있는 워크 플로 데이터베이스의 기능을 가져오고 데이터베이스는 현재 FileName과 dateComplete라는 두 가지 특성을 저장합니다. 현재 null 날짜 값은 null 파일 이름이 ""(선호되는 경우)로 인쇄 되더라도 1969 년 12 월 31 일으로 인쇄됩니다.dojo/date/locale - 널 날짜

TLDR : 인쇄 할 때 공백으로 표시하려면 NULL 날짜 만 있으면됩니다. 어떤 추천? 감사!

var cTextElements = []; 
    var gra = this.map.infoWindow.getSelectedFeature(); 
    var obj = { FileName: gra.attributes.FileName }; 
    cTextElements.push(obj); 
    obj = { dateComplete: locale.format(new Date(gra.attributes.dateComplete), { 
     selector: 'date', 
     datePattern: "MM'/'dd'/'yyyy" 
     })}; 
    cTextElements.push(obj); 
    template.layoutOptions.customTextElements = cTextElements; 

답변

0

이 귀하의 요구 사항을 해결할 수 있음 :

var myDate = locale.format(new Date(gra.attributes.dateComplete)); 
myDate = myDate ? myDate : ""; 

obj = { dateComplete: myDate, { 
    selector: 'date', 
    datePattern: "MM'/'dd'/'yyyy" 
})}; 
+0

당신이 "전달하는 경우로 현재 날짜 같은 몇 가지 기본 날짜가"날짜를 다음 obj가 dateComplete 같은 잘못된 날짜가됩니다 : "NaN이를/NaN/0NaN " –

+0

이제 제대로 작동합니다. –

0

1969년 12월 31일은 획기적인 일이다. gra.attributes.dateComplete은 0이므로 기본값은 기점입니다. 당신은 gra.attributes.dateComplete에 null을 확인하실 수 있습니다

var myDate = new Date(gra.attributes.dateComplete); 
myDate = myDate ? myDate : "12/31/2017"; 

또는

var myDate = new Date(gra.attributes.dateComplete); 
    myDate = myDate ? myDate : new Date();