ng-options与对象数据源

我正在努力理解ng-options如何与数据源协同工作。 我已经阅读了文档,并且觉得自己正在做所需的工作,但是尝试时仍然会遇到问题。

<!DOCTYPE html> <html ng-app="app"> <head> <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.1.5/angular.min.js"> </script> <link rel="stylesheet" href="style.css" /> <script type="text/javascript"> angular.module('app', []) .controller('IndexCtrl', ['$scope', function($scope) { $scope.types = { 1: "value1", 2: "value2", 5: "value3" }; }]); </script> </head> <body ng-controller="IndexCtrl"> <select ng-model="type" ng-options="k as v for(k, v) in types"> <option value="">Select Type</option> </select> </body> </html> 

我总是在控制台中得到这个错误:

错误:

预期的ngOptions' select (作为标签 )的forms? ( 钥匙 )? collections中的 价值 (由expr追踪)? 但是对于types中的(k,v)得到'k'。

我做错了什么?

在这里看到plunkr:

这有点奇怪,但似乎需要在之后放置空间。 这工作:

 <select ng-model="type" ng-options="k as v for (k, v) in types"> <option value="">Select Type</option> </select>