Я хочу использовать этот метод (который выводит сообщение, если пользователь печатает) с помощью службы. метод обновляет информацию varible (устанавливает свой текст в «набрав» или пробел).
Я думал об использовании этого метода в качестве услуги моей угловой модели. проблема в том, что этот метод нуждается в доступе к текстовому варианту {{info}} с ситами внутри представления (некоторые html).
Как я могу это сделать? мой код ниже .... Благодаря
файлJS
mymodule.controller("cntrlChat", ['$scope','isUserTypingService',
function($scope,isUserTypingService){
$scope.isUserTyping=function(){
isUserTypingService($scope.info);
}
}]);
mymodule.factory('isUserTypingService',['$q','$timeout', function($q,$timeout) {
var isUserTyping= function(info) {
runTwoFunctionWithSleepBetweenThem(function(){info='user is typing...';},function(){info='';},3500);
};
var runTwoFunctionWithSleepBetweenThem=function(foo1, foo2, time) {
$q.when(foo1()).then(() => $timeout(foo2, time));
}
return isUserTyping;
}]);
index.html
<html>
<head>
<script data-require="[email protected]" src="https://code.angularjs.org/1.4.9/angular.js" data-semver="1.4.9">
</script>
<script src="http://ajax.googleapis.com/ajax/libs/angularjs/1.2.25/angular-route.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/angular-ui-router/0.3.1/angular-ui-router.min.js"></script>
<script src="/socket.io/socket.io.js"></script>
<script src="script.js"></script>
<link rel="stylesheet" type="text/css" href="../css/style.css">
</head>
<div ng-app="mymodule" ng-view>
</div>
</html>
chat.html
{{info}}
в этом вызове: isUserTypingService ($ scope.userInput) $ scope.userInput pass как значение ссылки? – Matoy
да, он передается в качестве ссылки, поэтому вы можете изменить его в службе –