Angularjs 对象{$$hashKey:“00S”是什么意思
我一直在使用一个选择选项框。我可以让它独立工作并正确打印所选选项,但在我的应用程序中它就是不工作Angularjs 对象{$$hashKey:“00S”是什么意思,angularjs,select,Angularjs,Select,我一直在使用一个选择选项框。我可以让它独立工作并正确打印所选选项,但在我的应用程序中它就是不工作 <select ng-model="selected1" ng-change="operateOnOptions()"> <option value='1'>TOPPER</option> <option value='2'>
<select ng-model="selected1" ng-change="operateOnOptions()">
<option value='1'>TOPPER</option>
<option value='2'>RSC</option>
<option value='3'>SPD</option>
<option value='4'>SFT</option>
<option value='5'>LMP</option>
</select>
现在,在我的应用程序中,无论发生什么,这都将不起作用,并继续打印
对象{$$hashKey:“00S”}
这个奇怪的东西是什么意思???对象{$$hashKey:“00S”}
给定您的控制台.log($scope.selected1)
语句,意味着$scope.selected1
值当前是一个对象,这个对象有一个$$hashKey
属性,值为00S
。Angular通常分配一个$$hashKey
属性来跟踪某些内容,$$表示这是Angular内部私有属性
现在,这与您的问题有何关系,我怀疑您在代码中的某个地方将$scope.selected1
的值设置为一个不是给定选择选项值之一的值
如果您没有看到更多的代码,或者甚至没有更好的代码,那么这里就没有更多的内容可以提供给您了。我建议您看看Angular的select with ngOptions。你能用一个简单的例子进行复制吗?谢谢,当我隔离了上面提供的代码时,它就可以工作了,完全可以工作了。我的申请表太大了,不能放在小提琴上,我也不能合法地做。非常感谢您的回答。我正在使用$scope.selected1={}初始化控制器中的变量;不知道这是否是一个问题是的,您的初始化将selected1设置为空对象,这就是您看到该日志的原因。selected1的值应与您的选择选项值之一匹配。要么将其设置为null,要么将其设置为一个select选项值,例如,我尝试将其设置为{}和null,它在一个独立的项目中工作,但在我的一生中,我无法让它获取所选选项值并将其传递给控制器。下面是我创建的独立项目的plunker,它运行良好
$scope.operateOnOptions = function(){
console.log($scope.selected1);
};