使用Angular模型作为函数参数

时间:2016-03-19 18:19:08

标签: angularjs

在下面的代码中,我希望能够通过在输入中录制并实时获取Angular数据绑定来使菜单的长度动态化。     

<div ng-app="myApp" ng-controller="namesCtrl">

<p>Number of characters : <input type="number" ng-model="nmba" ></p>
    <ul>
        <li ng-repeat="x in chars track by $index">
            {{ x}}
        </li>
    </ul>
</div>

<script>
angular.module('myApp', []).controller('namesCtrl', function($scope) {

function printCharacters(param) {
   var result = [];
   for (i = 1; i <= param; i++) {
   result.push('a');
}
return result;
}
 $scope.chars = printCharacters($scope.nmba);
 });
</script>

 

所以我如上所述写了它,但它没有显示任何东西。我错过了什么吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:0)

这只是在控制器init上调用printCharacters,此时$scope.nmba =""

您需要在输入字段的任何更改时调用此func。

<input type="number" ng-model="nmba" ng-change="printCharacters(nmba)">

此外,您需要将printCharacters公开给$ scope

$scope.printCharacters = function(nbma){}