在AngularJS BootstrapUI Typeahead中,$ viewValue是什么?

时间:2013-07-24 14:30:40

标签: angularjs typeahead angular-ui-bootstrap

我正在尝试使用http://angular-ui.github.io/bootstrap/

在Angular中实现一个预先输入

似乎应该很容易,但我收到以下错误:

  

全局符号$viewValue需要显式包名。

什么是$viewValue?似乎没有定义。

由于

1 个答案:

答案 0 :(得分:24)

这是一个有效的预测示例:

<div class="container">
    <div ng-controller="mainCtrl" class="row-fluid">
        <form class="row-fluid">
            <div class="container-fluid">
                <input type="text" ng-model="selected" typeahead="state for state in states | filter:$viewValue" />
            </div>
        </form>
    </div>
</div>

<script>
angular.module('myApp', ['ui.bootstrap'])
.controller("mainCtrl", function ($scope) {
   $scope.selected = '';
   $scope.states = ['Alabama', 'Alaska', 'Arizona', 'Arkansas', 'California', 'Colorado', 'Connecticut', 'Delaware', 'Florida', 'Georgia', 'Hawaii', 'Idaho', 'Illinois', 'Indiana', 'Iowa', 'Kansas', 'Kentucky', 'Louisiana', 'Maine', 'Maryland', 'Massachusetts', 'Michigan', 'Minnesota', 'Mississippi', 'Missouri', 'Montana', 'Nebraska', 'Nevada', 'New Hampshire', 'New Jersey', 'New Mexico', 'New York', 'North Dakota', 'North Carolina', 'Ohio', 'Oklahoma', 'Oregon', 'Pennsylvania', 'Rhode Island', 'South Carolina', 'South Dakota', 'Tennessee', 'Texas', 'Utah', 'Vermont', 'Virginia', 'Washington', 'West Virginia', 'Wisconsin', 'Wyoming'];
});
</script>

http://jsfiddle.net/alfrescian/ZjPWe/

$viewValue是视图中的当前值 - 您的字符串输入。 $viewValue中指定了{{1}}。