J'essaie d'appeler une fonction basée sur une valeur d'entrée. Le scénario va: si personne ne va ajouter quelque chose dans cette entrée pendant 10 secondes (donc la valeur sera nulle), rendre cette entrée désactivée. Je voudrais utiliser ng-change ou quelque chose de similaire à partir de méthodes angulaires au lieu de toutes les conditions de "clavier".Angulaire un: fonction de temporisation javascript
Maintenant le premier pense à faire est de régler la minuterie à 0 lorsque le bouton est cliqué et en comptant à 10.
angular.module('myApp', [])
.controller('myCtrl', ['$scope', function($scope) {
$scope.count = 10;
$scope.inpValue = '';
function myFunction() {
setTimeout(function() {
if ($scope.inpValue.length === 0 && $scope.count >= 10) {
alert("Execute function when if is true");
}
}, 1000);
};
myFunction();
}]);
Cela ne résout pas votre problème, mais: En AngularJS, vous devez utiliser le service de délai d'attente de $ au lieu de setTimeout. La détection des modifications d'Angularjs ne fonctionne pas correctement à moins que vous ne le fassiez. https://docs.angularjs.org/api/ng/service/$timeout –
Quel est le but du bouton 'Fermer quand il atteint 10' dans le violon? – Sajal
@Sajal Cela devrait appeler la fonction sur le clic, fondamentalement, je peux appeler myFunction sur le changement d'entrée en utilisant ng-change ou sur ce bouton en utilisant ng-click. Est-ce l'un ou l'autre. – mcmwhfy