Angular data-bs-datepicker 指令 + 日期更改

Angular data-bs-datepicker directive + on date change

所以我有一个任务列表。 每个任务都有一个计划开始日期和一个计划结束日期 (plannedStartDate / plannedEndDate)。我使用 ng-repeat 创建我的 table。 我需要一个简单的锚点,点击它会触发一个日期选择器并且:

但是:

目前,我的日期选择器看起来像:

         <a href="#" data-bs-datepicker
               data-date-startDate="task.plannedStartDate" data-ng-model="task.plannedEndDate"
               data-date-format="dd/mm/yyyy"
               data-date-type="string">
                {{task | dateIndication}}
            </a>

我试过使用和不使用 date-format 和 date-type,但似乎都无济于事。此外,如果我使用它,开始日期会自动设置为今天,即使任务的计划开始日期不是今天。 (我猜这是日期格式问题?)

我试过在任务数组上放一个手表:

$scope.$watch('tasks', function (newVal) { /*...*/ }, true);

(还有一些变体,比如使用 watch collection 等),但什么都没有!

零钱根本抓不到

(另外,dateIndication 过滤器看起来像:

 .filter('dateIndication', function () {
        return function (task) {
            if (task.plannedEndDate) {
                var plannedEndDate = moment(task.plannedEndDate);
                return plannedEndDate.format('L');
            } else {
                return messages.dashboard.todosAndTasks.noDueDate();
            }
        }
    })

我非常需要一些帮助。谢谢!

var change;

change = function(date) {
           var r;
           r = date.match(/^\s*([0-9]+)\s*-\s*([0-9]+)\s*-\s*([0-9]+)(.*)$/);
           return r[2] + "-" + r[3] + "-" + r[1] + r[4];
 };

使用此函数并在调用函数时传递日期,它将 return 日期选择器的完美格式,它显示得非常好,还有一件事你需要在传递日期之前拆分日期然后它工作很好检查一下,告诉我有什么不同