我是Angular Js.的新手。我正在尝试在我的应用程序中使用角度常量,如下面的代码所示,我能够提醒常量值,但我无法通过使用ng-来绑定视图中的常量值重复
1.index.html
<html ng-app="objApp" lang="en">
<head>
<meta charset="UTF-8">
<title>Example</title>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.0-rc.0/angular.min.js"></script>
<script src="jquery.min.js"></script>
<script src="app.js"></script>
<script src="controller.js"></script>
</head>
<body ng-controller="ObjectiveController">
<form>
<select>
<option ng-repeat="dropdown in dropdown.regular>{{dropdown.name}}</option>
</select>
</form>
</body>
</html>
app.js
var app = angular.module('objApp', ['ObjectiveControllers'])
app.constant('dropdown', {
regular: [
{id: 1, name: 'daily'},
{id: 2, name: 'Weekly'},
{id: 3, name: 'Monthly'},
{id: 4, name: 'Yearly'}
]
});
controller.js
var objectiveControllers = angular.module('ObjectiveControllers', []);
objectiveControllers.controller('ObjectiveController', ['dropdown', function (dropdown) {
alert(dropdown.regular);
}]);
答案 0 :(得分:0)
你是否试图为重复的对象使用与你正在获取的名称相同的名称?
像那样:ng-repeat="drop in dropdown.regular"
答案 1 :(得分:0)
您需要将下拉列表分配给$scope
:
$scope.dropdown = dropdown;
答案 2 :(得分:0)
将常量值分配给$ scope变量
objectiveControllers.controller('ObjectiveController', ['dropdown', '$scope',function (dropdown, $scope) {
$scope.dropdown=dropdown;
}]);
这是工作plnkr
另见下文:
答案 3 :(得分:0)
你需要使用常量变量并将$ scope变量赋值给它,因为常量不能像$ scope变量那样在dom中识别。
更改以下内容即可。
在js控制器中。
$scope.val = dropdown.regular;
和 在html中
<select>
<option ng-repeat="dropdown in val ">{{dropdown.name}}</option>
</select>