javascript - Angular 发布请求不起作用不起作用

标签 javascript jquery angularjs angularjs-scope

这是我的模块:

angular.module('ngDetails', ['])
.constant('API', 'http://myserver.com/dir/api')
.controller('carDetails', carDetails)

这是我的 Controller :

function carDetails($scope, CarDetailService) {
  CarDetailService.getCar().success(function(details) {

    $scope.details = details;

    carID = $scope.details['ID'];

    $scope.approve = function($scope, $http, API, Message) {
      $http.post( API + '/car/' + carID , { Message: Message } ).
      success(function(data) {
        $scope.approve = data;
      })
    }

  });

这是我的 HTML:

<div ng-controller="carDetails">
  <textarea placeholder="Message" ng-model="Message"></textarea>
  <button ng-click="approve()">Approve</button>
</div>

我想要做的是向我的 API 发送一个发布请求,该请求会发送一条消息,用户在点击“批准”按钮之前将其放入文本区域框中。但是,当我点击“批准”按钮时,我收到一条错误消息:“无法读取 m.$scope.approve 处未定义的属性‘post’”。我该如何解决这个问题?

提前致谢。

最佳答案

那是因为您需要在构造函数中请求 DI 项,而不是在批准函数中。

  function carDetails($scope, CarDetailService, $http, API, Message) {
  CarDetailService.getCar().success(function(details) {

    $scope.details = details;

    carID = $scope.details['ID'];

    $scope.approve = function() {
      $http.post( API + '/car/' + carID , { Message: Message } ).
      success(function(data) {
        $scope.approve = data;
      })
    }

  });

关于javascript - Angular 发布请求不起作用不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38927013/

相关文章:

javascript - 导出模块并在导入时抛出错误/停止执行

javascript - HERE Maps JS API v3 集群提供程序在添加许多数据点时挂起

javascript - 在 jQuery 中创建一个对象数组

javascript - 这是一个 JS 无限循环吗?

javascript - angularjs 使用 ng-repeat 调用 Filter 两次

angularjs - 在 AngularJS 指令中运行链接函数之前等待 Controller 中的数据

angularjs - ui-router 嵌套路由 Controller 未被调用

javascript - 在 JavaScript 中运行 for 循环的问题

javascript - 为什么它不清除我的 div? (Javascript 和 Jquery)

javascript - 如何使用javascript文件解码编码?