javascript - Angular 中的 HTTP 请求

标签 javascript angularjs ajax forms

我正在尝试使用 Angular js 进行 api 调用。不幸的是,我似乎遇到了一些麻烦。我正在尝试将英雄名称传递到表单字段中,并使用该信息与我的后端 api 进行对话。不幸的是,当我尝试联系时,我没有收到任何响应数据。有关如何成功调用电话的任何提示?

这是 Controller 。

vm.errorMsg = '';

vm.hero = '';

function getCharacter(hero) {
    $http({
        method: "GET",
        data: {
            format: 'json'
        },
        url: "localhost:8080/character/heroByName/" + hero
    }).then(function mySuccess(response){
        vm.hero = response.data;
        console.log(vm.hero);
    }, function myError(response){
        vm.errorMsg = response.statusText;
        console.log(vm.errorMsg);
    });
}

这是表单字段,您可以在其中输入英雄名称。

<div class="container">
  <h2>{{character.title}}</h2>
  <div class="row">
    <div class="col-md-8 col-md-offset-2">
      <div class="input-group">
        <input type="text" class="form-control" placeholder="Wolverine" ng-model="character.hero">
        <span class="input-group-btn">
        <button class="btn btn-default" type="submit" ng-click="character.getCharacter(character.hero)">Go!</button>
        </span>
      </div>
    </div>
  </div>
</div>

最佳答案

您应该通过将函数分配给 vm.getCharacter 来将您的函数暴露给作用域。之后,您可以通过 ng-click="vm.getCharacter(character.hero)" 在您的模板中调用它。

Controller

vm.errorMsg = '';
vm.hero = '';
vm.getCharacter = getCharacter;

function getCharacter(hero) {
    $http({
        method: "GET",
        data: {
            format: 'json'
        },
        url: "localhost:8080/character/heroByName/" + hero
    }).then(function mySuccess(response){
        vm.hero = response.data;
        console.log(vm.hero);
    }, function myError(response){
        vm.errorMsg = response.statusText;
        console.log(vm.errorMsg);
    });
}

模板

<button class="btn btn-default" type="submit" ng-click="vm.getCharacter(character.hero)">Go!</button>

关于javascript - Angular 中的 HTTP 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37367704/

相关文章:

php - 半径搜索 PHP、MYSQL 和谷歌地图

php - 在 AJAX 后置过滤器函数中使用多个 'relation' 参数

javascript - 将 google 登录集成到我的网站

javascript - 我如何防止 jQuery 函数(读取 thead 第 1 行的标题属性)将检索到的标题应用于文档中的所有表?

AngularJS ng-class 无法覆盖 Bootstrap 下拉 CSS 规则

javascript - 与 angular-nvd3 一起使用的 nvd3 是 slooooowwwww

javascript - 页面加载后,jQuery fadeOut 延迟第一次不起作用

javascript - 如何将窗口和文档对象引入spidermonkey javascript shell?

javascript - 单击浏览器中的最大化或最小化按钮时启用调整图标大小

AngularJS - http 拦截器 - 在 token 刷新后重新发送所有请求