Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 角度引导提前类型问题与提前类型语法_Angularjs_Angular Ui Bootstrap_Typeahead - Fatal编程技术网

Angularjs 角度引导提前类型问题与提前类型语法

Angularjs 角度引导提前类型问题与提前类型语法,angularjs,angular-ui-bootstrap,typeahead,Angularjs,Angular Ui Bootstrap,Typeahead,我在这里一直在使用type-ahead指令,它工作得很好: 我的问题是,我已经从使用整个对象的场景中走出来: <input type="text" ng-model="MyPerson" typeahead="i as i.Name for i in PeopleSearch($viewValue)" /> 对于只需要部分对象的场景: <input type="text" ng-model="MyPerson" typeahead="i.Id as i.Name for

我在这里一直在使用type-ahead指令,它工作得很好:

我的问题是,我已经从使用整个对象的场景中走出来:

<input type="text" ng-model="MyPerson" typeahead="i as i.Name for i in PeopleSearch($viewValue)" />

对于只需要部分对象的场景:

<input type="text" ng-model="MyPerson" typeahead="i.Id as i.Name for i in PeopleSearch($viewValue)" />

此时,无论为“as”输入什么,模型和文本框都将包含相同的内容。有人能解释为什么会这样吗?看起来逻辑应该模仿ng选项的表达式,但显然不是这样

下面是一个演示:


选择项目后,文本框应包含该人员的姓名。

这是我的解决方案,以防其他人遇到此问题:

<input type="text" ng-model="MySelectedPerson" typeahead="i as i.Name for i in PeopleSearch($viewValue)" typeahead-on-select="MyPerson = MySelectedPerson.Id" />

这一次你完全救了我,谢谢你发布你的解决方案。它也让我朝着正确的方向前进,从angular ui开发人员那里了解更多关于这个问题的信息。请参阅来自pkozlowski开源和他的plunkr的回复。它使用
typeahead输入格式化程序
属性。