md-datepicker (각도 재질)로 렌더링 할 수 있도록 날짜 문자열을 Date 개체로 변환해야하는 많은 API가 반환되었습니다.md-datepicker의 렌더링시 문자열을 날짜로 변환
처음에는 각 서비스에서이 작업을 수행했습니다. 실제로 각 서비스에서 다른 서비스를 호출하여 문자열을 날짜로 변환했지만 유지 관리가 어려워졌습니다.
그래서 md-datepicker 지시문을 확장하여이 작업을 수행하려하지만 값을 수정하는 방법을 모릅니다. 각 사용법마다 다른 상위 컨트롤러가 있습니다. 여기
내가있어 무엇 : 는.directive('customDatePicker', function(DatesService) {
return {
restrict: 'A',
require: 'mdDatepicker',
scope: {
date: '='
},
link: function(scope, element, attrs, controller, transcludeFn) {
// access value in scope here
console.log(scope);
}
}
})
편집 - task.html
<md-datepicker custom-date-picker date="TaskDetailCtrl.task.start_date" ng-model="TaskDetailCtrl.task.start_date">
</md-datepicker>
내가 분리 범위를 사용하여 생각 나는 수있을 것 app.js 값을 더 쉽게 얻을 수 있습니다. 그리고 어떤 컨트롤러가 사용되었는지는 중요하지 않습니다 (스코프 옵션이 없으면 값을 볼 수 있지만 컨트롤러의 이름을 알아야합니다). 불행하게도
,
I get a Multiple Directive Resource Contention Error. 이것에 대한 더 나은 솔루션이 있습니까?
를 통해 포맷터를 추가 (<시작일 소스>)? 귀하의 컨트롤러에 – joyBlanks
하지만 같은 컨트롤러와 서비스를 여러 번 걸쳐 중복해야합니다. 작업 목록, 단일 작업, 이동/업데이트 작업, 날짜 변환이 필요한 기타 리소스가 있습니다. – DJC
당신의 지시어로'customDatePicker'보다는'mdDatepicker'라는 이름을 선택하고 나머지는 모두 똑같은 범위를 유지하고 무슨 일이 일어나는지 확인해야하며'E '로 제한합니다. – joyBlanks