1
Angular-UI-Bootstrap Datepicker customClass에 양방향 데이터 바인딩 변수를 전달하려고합니다. 하지만 데이터 바인딩 내 customClass 함수 내에서 작동하지 않습니다, 그냥 날 사용자가 함께 초기화 값을 제공합니다.Angular UI Bootstrap Datepicker 사용자 정의 클래스에 변수를 전달하는 방법
예 :
- I 사이트 및 getDayClass로드는
- 내가 사이트와 두에서 사용자를 선택합니다 (이 경우 정의되지 않은) chosenUser에서 초기화 된 데이터로 호출되는 -way 데이터 바인딩은 다른 모든 곳에서 올바르게 작동하지만 getDayClass function
- 그래서 에서 getDayClasschosenUser는 여전히 그래서
그 함수 내에서 통과되지 않는 getDayClass의 첫 번째로드 후 변수에 대한 변경없는 경우에도 불구하고, 정의로 표시됩니다. 나는 왜 그것이 거기에서 작동하지 않는지 이해할 수 없다.
function CalendarController() {
var vm = this;
//THIS IS THE VARIABLE (USER OBJECT) I'M TRYING TO PASS TO getDayClass
vm.chosenUser = {};
//OPTIONS PASSED TO BOOTSTRAP DATEPICKER
vm.options = {
customClass: getDayClass
};
//THIS IS THE FUNCTION I RUN FROM HTML WITH NG-CLICK AND IT EXECUTES
//FUNCTION getDayClass (AMONG OTHER THINGS)
vm.refresh = function() {
$("#calendar").data("$uibDatepickerController").refreshView();
}
function getDayClass(data) {
var date = data.date,
mode = data.mode;
//RETURNS UNDEFINED (ONLY INSIDE THIS FUNCTION)
//EVEN AFTER USER HAS BEEN CHOSEN
console.log(vm.chosenUser);
...
};
}
감사하지만 그것은 작동하지 않습니다 문제는 getDayClass 후 chosenUser에 수행 변경 사항 getDayClass에 표시되지 않습니다로드 처음이다 /. 그리고 getDayClass는 사이트가 처음로드 될 때로드되어 selectedUser의 양방향 데이터 바인딩은 어떤 이유로 든 getDayClass에 영향을 미치지 않으므로 아무 쓸모가 없습니다 – Dope