see also JSFIDDLE demo如何使這個簡單的AngularJS 1.0.2 ng-options示例在1.4.2+中工作?
在這個例子中,我從另一個對象內的對象數組中填充選擇選項。所選擇的值也保持這個對象內部:
function QuarterController($scope) {
$scope.MyData = {
Quarter: 2,
QuarterArray: [{
'value': 1,
'text': 'Q1'
}, {
'value': 2,
'text': 'Q2'
}, {
'value': 3,
'text': 'Q3'
}, {
'value': 4,
'text': 'Q4'
}],
};
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.0.2/angular.min.js"></script>
<div ng-app>
<h2>AngularJS ng-options Demo</h2>
<p>Works in AngularJS 1.0.2 but not in 1.4.2.</p>
<div ng-controller="QuarterController">
<select name="quarter" ng-model="MyData.Quarter" ng-options="obj.value as obj.text for obj in MyData.QuarterArray">
<option value="">Please select...</option>
</select>
<div>Quarter Selected: {{MyData.Quarter}}</div>
</div>
<p>What must I change to make this work in the latest AngularJS 1.*?</p>
</div>
如果從1.0.2改變AngularJS庫1.4.2它停止工作。我必須做什麼才能在最新的1.4。*或1.5。*版本中完成這項工作?
(感謝BruteCode這個例子的起源)禁止使用全局變量作爲默認控制器
的[角不能識別全局用作控制器]可能的複製(http://stackoverflow.com/questions/29190214/angular-is-not-recognizing -global-functions-as-controllers) – m59