Как переписать нижнюю строку кода в контроллере app.js. Как я могу написать функцию, в которой я фильтрую параметр mustShow var для длины больше нуля
**choice | filter: {mustShow: 'yes'}).length > 0**
<body ng-app="Compensation">
<script src="https://code.angularjs.org/1.4.3/angular.js"></script>
<script src="https://code.angularjs.org/1.4.3/angular-route.js"></script>
<script src="app.js"></script>
<div ng-controller="MainCtrl">
<div data-ng-repeat="choic in choice">
<form>
<input ng-model="choic.mustShow" class="label_align" type="radio" name="customer" value="no" ng-change="change()" >
<div class="mediumSubhead"> Information housed </div>
<br/>
<input ng-model="choic.mustShow" class="label_align" type="radio" name="customer" value="yes">
<div class="mediumSubhead"> Information housed outside </div>
</form>
</div>
**<div ng-show="(choice | filter: {mustShow: 'yes'}).length > 0">**
<input name="first_name" class="text_box_space" type="text" value="" style="color: black;" size="25" width="200px">
</div>
</div>
</body>
var app = angular.module('EquityCompensation', []);
app.controller('MainCtrl', function($scope) {
$scope.choice = [{id: 'choic1'},{id: 'choic2'}];
});
Вам следует ввести $filter
в контроллер, а затем использовать его как:
$filter('choice')({mustShow: 'yes'}).length > 0
Что-то вроде этого:
var app = angular.module('EquityCompensation', []);
app.controller('MainCtrl', function ($scope, $filter) {
var choice = $filter('choice')({mustShow: 'yes'});
// Do something with choice
});