это мой код контроллераПочему следующий код Angular 1.6 не фильтруется в нижнем регистре таким образом?
myApp.controller('MainController',['$scope','$filter',function($scope,$filter){
$scope.handle = '';
$scope.lowercasehandle = $filter('lowercase')($scope.handle);
}]);
и это HTML часть
<div class="container" ng-controller="MainController">
<div>
<label for="">What is your twitter handle?</label>
<input type="text" ng-model="handle">
</div>
<h3>www.twitter.com/{{lowercasehandle}}</h3>
</div>
но тот же код работает, когда я делаю lowercasehandle функция возврата строчную версию ручки. В приведенном ниже примере отлично работает при вызове в html, вызывая функцию lowercasehandle() в h3.
myApp.controller('MainController',['$scope','$filter',function($scope,$filter){
$scope.handle = '';
$scope.lowercasehandle = function() {
return $filter('lowercase')($scope.handle);
};
}]);
Так почему я не могу напрямую обновить значение нижнего регистра в первом случае. Зачем мне нужно использовать функцию здесь? Какие изменения, которые я делаю в контроллере, должны отображаться в представлении? Итак, почему я не могу добиться того, что хочу, используя первый метод?
Но когда я ввожу что-то на страницу html, он одновременно изменит значение $ scope.handle, и это, в свою очередь, должно изменить значение нижнего регистра, которое затем должно отображаться на странице в виде обновленного значения ? – Ravy
Затем он вызовет функцию. Но, может быть, просто придерживаться html-версии фильтра, может быть проще @Ravy – baao