在我的应用程序的设置中,我每次使用Restangular进行请求时,都会使用Restangular.setRequestInterceptor()调用一个显示加载屏幕的函数。

但是,我的应用程序中有一个地方我不希望它调用该函数。如何告诉Restangular忽略此调用的setRequestInterceptor函数?

最佳答案

对于遇到此问题的其他任何人,事实证明Restangular允许您创建一个单独的Restangular服务,其配置选项与全局选项不同。 Restangular GitHub中的此示例显示了如何:

// Global configuration
app.config(function(RestangularProvider) {
  RestangularProvider.setBaseUrl('http://www.google.com');
  RestangularProvider.setRequestSuffix('.json');
});

// Restangular service that uses Bing
app.factory('BingRestangular', function(Restangular) {
  return Restangular.withConfig(function(RestangularConfigurer) {
    RestangularConfigurer.setBaseUrl('http://www.bing.com');
  });
});

// Let's use them from a controller
app.controller('MainCtrl', function(Restangular, BingRestangular) {

  // GET to http://www.google.com/users.json
  // Uses global configuration
  Restangular.all('users').getList()

  // GET to http://www.bing.com/users.json
  // Uses Bing configuration which is based on Global one, therefore .json is added.
  BingRestangular.all('users').getList()
});

关于javascript - 矩形一次忽略setRequestInterceptor,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20909427/

10-09 08:59