AngularJS: por qué el valor del modelo ng no se actualiza en la variable de alcance

Estoy usando el complemento jquery timepicker y su directiva angular. Cuando restablezco los valores del alcance de javascript, por el mismo tiempo, el valor del alcance no se actualiza.

Intenté hacer cambios en el archivo de la directiva timepicker pero no lo logré.

Ejemplo:- Seleccione la hora de inicio 1:00 a.m. y luego la hora de finalización se establece automáticamente en 1:15 a.m., que se actualiza desde la función de observación en el archivo JS. Ahora haga clic en Restablecer y los valores se eliminarán o los campos de entrada quedarán en blanco. Ahora, seleccione nuevamente la misma hora a la 1:00 a.m., la hora de finalización no se completa automáticamente y también el reinicio no funciona.

Pero eso funciona si cambio la hora que no sea la hora seleccionada previamente.

Problema:- Después de restablecer el valor en el campo de entrada se ve poblado pero eso no se actualiza en el ámbito angular o modelo. Pero si verifico ese valor a través de la función document.getElementById (), entonces me muestra ese valor que está dentro de ese campo de entrada. Entonces, ¿por qué esos valores no se actualizan en alcance angular?

Requisito:- Quiero vaciar los campos después de que el usuario haga clic en restablecer. y por segunda vez cuando el usuario selecciona el"Mismo tiempo" El valor debe actualizarse en alcance angular y modelo.

Código:-

 var app = angular.module('timePicker', ['ui.timepicker']);

app.controller('DemoCtrl',function($scope){
//$scope.startTime = new Date();
$scope.$watch('startTime', function (newValues, oldValues, scope) 
    {

        if( ($scope.startTime != undefined) &&  ($scope.startTime != null) && ($scope.startTime != '') )
            {
                $scope.endTime =  new Date($scope.startTime.getTime() + (15*60*1000));

                console.log($scope.startTime);
                console.log($scope.endTime);
            }   

    });

$scope.$watch('scope', function (newValues, oldValues, scope) 
    {
        console.log("Nothing here");
    });

$scope.resetTime = function()
{
  $scope.startTime = undefined;
  $scope.endTime = undefined;

}


});

Mi plnker: -Plnker

Recursos utilizados: -

https://github.com/jonthornton/jquery-timepicker cuya directiva en angular está enhttps://github.com/Recras/angular-jquery-timepicker.

Respuestas a la pregunta(2)

Su respuesta a la pregunta