重用函数Angular 1

时间:2016-12-17 11:55:03

标签: java c# asp.net angularjs angularjs-scope

假设我有2 lists of items:可用商品和相关商品。 现在我想写一个调用API方法的搜索函数来搜索每个列表(different methods)。 我想使用$scope object将搜索结果签名到模型中。 像这样:

 $scope.availableItems.data = response.data;

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

1 个答案:

答案 0 :(得分:1)

将搜索方法放入服务中,将服务注入到组件中。绑定到服务中的值,或者更好的是,在组件中创建一个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()}}