假设我有2 lists of items:可用项目和相关项目。
现在,我想编写一个搜索函数,该函数调用对每个列表(different methods)进行搜索的API方法。
我想使用$scope object将搜索结果登录到模型中。
像这样:

 $scope.availableItems.data = response.data;


在这种情况下,编写可重用搜索方法的最佳方法是什么?

最佳答案

将搜索方法放入服务中,然后将服务注入组件中。绑定到服务中的值,或者更好的是,在组件中创建一个getter并从注入的服务中返回值。

就像是:

为您服务:

this.searchVal ='';

executeSearch ( searchTerm ) {
   // The usual http angular stuff etc.
   .then ( function ( d ) {
      this.searchVal = d; // however you do it in your code
   }
}


在将searchService注入其中的组件中:

function getSearchValue ( ) {
   return myInjectedService.searchVal;
}


在组件模板中,绑定到getter,说您将getSearchValue放在作用域上:

{{getSearchValue()}}

08-18 18:08