dom*_*kun 2 javascript angularjs angular-ui angular-ui-bootstrap
我正在改进我的ui.bootstrap typeahead添加一些awesomness,但我在这个上苦苦挣扎.
我创建了一个小型的Plunker来演示我的问题:http://plnkr.co/edit/u2Le37?p = preview
关于这个问题的两个词:
我有这个对象数组填充我$scope.data
但我无法告诉我typeahead
只使用特定字段来搜索结果
$scope.data = [
{
name: 'Mario',
desc: 'Super Plumber',
id: 0,
type: 'good'
},
{
name: 'Luigi',
desc: 'Assistant Plumber',
id: 1,
type: 'good'
},
...
Run Code Online (Sandbox Code Playgroud)
每当您在预先搜索时,您将搜索对象中的每个字段,甚至type
和id
我尝试过这样的解决方案,但没有成功:
typeahead="datum.name as ( datum.name +', '+ datum.desc)
for datum in data | filter:$viewValue | limitTo:8"
---> no change
typeahead="datum as ( datum.name +', '+ datum.desc)
for datum.name in data | filter:$viewValue | limitTo:8"
--> no match
Run Code Online (Sandbox Code Playgroud)
我怎样才能将搜索限制在该name
字段中?
Ana*_*and 13
神奇的线条如下
filter:{name: $viewValue}
Run Code Online (Sandbox Code Playgroud)
这会将搜索限制为仅名称字段.关于ng-filter,请查看此文档
对象:模式对象可用于过滤数组包含的对象的特定属性.例如{name:"M",phone:"1"} 谓词将返回一个项目数组,其属性名称包含"M",属性手机包含"1".可以使用特殊属性名称$(如{$:"text"})来接受对象的任何属性的匹配.这相当于如上所述与字符串匹配的简单子字符串.
Plunker更新
归档时间: |
|
查看次数: |
1707 次 |
最近记录: |