我使用角度自举头发。我想为无限滚动添加一个功能,因为我已经添加了一个小的指令,用于滚动功能和一些更改的前导模板,滚动指令按预期工作,但是在结果更新后,不要更新视图。
我的意见是:
<input type="text" ng-model="variable" placeholder="Search..." typeahead="obj as obj.text for obj in getObject($viewValue)" typeahead-wait-ms="500" />
打字模板:
<ul class="dropdown-menu typeahead-custom" ng-scroll="getObject('{{query}}')" ng-scroll-direction="down" ng-show="isOpen()" ng-style="{top: position.top+'px',left: position.left+'px'}" style="display: block;" role="listBox" aria-hidden="{{!isOpen()}}"> <li ng-repeat="match in matches track by $index" ng-class="{active: isActive($index) }" ng-mouseenter="selectActive($index)" ng-click="selectMatch($index)" role="option" id="{{match.id}}" should-focus="isActive($index)"> <div typeahead-match index="$index" match="match" query="query" template-url="templateUrl"></div> </li> </ul>
和getObject函数:
$rootScope.lastResult = []; $rootScope.getObject = function(str) { return $http({ url: "someUrl",method: "post",headers: {'Content-Type': 'application/json'},data: {str: str,page_limit: 10} }).then(function(response) { $.merge($rootScope.lastResult,response.data.data); return $rootScope.lastResult; }); };
当我在类型头部输入中输入内容时,它工作正常,但是当我滚动到头文字模板时,它会调用一个函数并更新lastResult变量,但是没有更新类型头的DOM元素。
任何帮助?请….
请试试这个 !!
原文链接:https://www.f2er.com/angularjs/145084.html$rootScope.lastResult = []; $rootScope.getObject = function(str) { return $http({ url: "someUrl",page_limit: 10} }).then(function(response) { $rootScope.$apply(function(){ $.merge($rootScope.lastResult,response.data.data); }); return $rootScope.lastResult; }); };