Javascript 使用ngOptions选择将未定义的返回到ngModel
所以我尝试使用一个带有Ngooptions的select字段来填充它。但每当我选择某个东西时,我在ngModel中使用的变量就会变成未定义的 这是我的HTML:Javascript 使用ngOptions选择将未定义的返回到ngModel,javascript,angularjs,typescript,Javascript,Angularjs,Typescript,所以我尝试使用一个带有Ngooptions的select字段来填充它。但每当我选择某个东西时,我在ngModel中使用的变量就会变成未定义的 这是我的HTML: <select ng-options="name as operator.name for operator in vm.operators track by operator.value" ng-model="vm.oper"></select> 还有我的打字稿: private operators: A
<select ng-options="name as operator.name for operator in vm.operators track by operator.value" ng-model="vm.oper"></select>
还有我的打字稿:
private operators: Array<any> = [
{
name: 'greater than',
value: '>'
},
{
name: 'less than',
value: '<'
},
{
name: 'equal',
value: '='
},
{
name: 'greater than or equal',
value: '>='
},
{
name: 'less than or equal',
value: '<='
}
];
private oper: any = null;
专用运算符:数组=[
{
名称:'大于',
值:'>'
},
{
名称:'小于',
值:'='
},
{
名称:“小于或等于”,
值:“尝试将您的vm.oper
初始化为vm.operators[0]
?我估计您的vm.oper
为空,因此当您的
尝试更新ngModel
时,它实际上会更新其作用域ngModel,而不是父作用域尝试将您的vm.oper
初始化为vm.operators[0]
?我估计您的vm.oper
为空,因此当您的
尝试更新ngModel
时,它实际上会更新其作用域ngModel,而不是父作用域尝试使用操作符
而不是名称
或操作符.value
<select ng-options="operator.value as operator.name for operator in vm.operators track by operator.value" ng-model="vm.oper"></select>
或
尝试使用运算符
而不是名称
或运算符。值
<select ng-options="operator.value as operator.name for operator in vm.operators track by operator.value" ng-model="vm.oper"></select>
或
正如@JoazitoPolo建议的那样,我必须用“operator.value As operator.name for operator in vm.operators”替换我的选项字符串,因为“name”是未定义的,它每次都返回未定义的。因此,“As”之前的部分实际上是插入select的值字段中的内容,我认为这就是“track by”的内容是的。我完全误读了ngOptions的文档:)因为@JoazitoPolo建议我必须用“operator.value As operator.name for operator in vm.operators”替换我的选项字符串,因为“name”未定义,所以每次都返回未定义。所以“As”之前的部分是实际插入select值字段的内容,我认为这就是“track by”的用途。我完全误读了ngOptions的文档:)尝试定义该值,并删除trackBy:ng options=“operator.value as operator.name for operator in vm.operators”@JoaozitoPolo似乎我必须用替换“name as”“operator.value as”谢谢您的评论!我误解了ngOptions的文档。请尝试定义该值,并删除trackBy:ng options=“operator.value as operator.name for operator in vm.operators”@JoaozitoPolo似乎我必须将“name as”替换为“operator.value as”“谢谢你的评论!我误解了ngOptions的文档。