javascript - 如何调用 http Get 服务并在单击按钮时在 angularjs 的 div 中显示其响应?

标签 javascript jquery angularjs

我试图在 Angular js 中单击按钮时调用 $http Get 服务。但我没有在结果中显示数据...我的代码片段如下:-

<button ng-controller="myCtrl6" ng-click="search()">Click</button>
<p ng-controller="myCtrl6">
  {{results}}
  {{fail}}
</p>
var app = angular.module("myApp", []);
app.controller('myCtrl6', ['$scope', '$http', function ($scope, $http) {
  $scope.results = "";
  $scope.fail = "f";
  $scope.search = function() {
    $http.get('welcome.html', {}, function(response) {
      $scope.results = response.data; 
    }, function (failure) { 
      console.log("failed :(", failure); 
    });
  }
}]);

欢迎.html

Hello World

最佳答案

这就是$http的正确使用

$http({
  method: 'GET',
  url: '/someUrl'
}).then(function successCallback(response) {
    // in your case 
    $scope.results = response.data; 
  }, function errorCallback(response) {
    // called asynchronously if an error occurs
    // or server returns response with an error status.
  });

$http.get('/someUrl', config).then(successCallback, errorCallback);

最好为此提供服务:

app.factory('ServiceName', function() {
  return {
     search: search
  };

  function search () {
    return $http.get('/someUrl', config);
  }
});

在 Controller 中

var app = angular.module("myApp", []);
app.controller('myCtrl6', ['$scope', 'ServiceName', function ($scope, serviceName) {
  $scope.search = function() {
    serviceName.search().then(function(response) {
      $scope.results = response.data; 
    });
  }
}]);

已编辑

关于javascript - 如何调用 http Get 服务并在单击按钮时在 angularjs 的 div 中显示其响应?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45165061/

相关文章:

javascript - 获取动态导入模块失败 :

javascript - D3.js 静态力布局不适用于路径?

javascript - 使用ajax请求时是否可以自定义User Agent参数?

javascript - jQuery 阻止下拉菜单中的默认功能

javascript - 从前端传递数据以创建动态 multer 目标文件夹

javascript - 使用单元测试测试 ng-if div 是否正确显示

javascript - 尝试删除字符串中的一些字母

什么是JSONP

jquery - 标题周围不需要的边距

javascript - 如何通过 Angular 2中的事件对象获取输入字段名称