AngularJS(1.6)ng-click功能不起作用

时间:2017-05-04 19:55:36

标签: html angularjs

我确定我说错了,但我一直在研究我正在使用Angular 1.6构建的界面。

其他一切正常,但这个ng-click指令。我的控制器的相关部分,名为signupController,别名为“sup”,位于:

  sup.postForm = function($http){
    console.log("postform has been fired.");
     $http.post('api/submit', sup.contactInfo)
      .then(function(response){
        sup.messages.push('Successfully added. Thanks, ' + contactInfo.firstName);
  }, function(response){
        sup.messages.push('Sorry, this failed. Please try again. \n' + response );
  });
}

在我的Html中,我将函数绑定到一个按钮,如下所示:

  <button class="btn btn-success" id="submit" ng-click="postForm">Submit</button>

但它没有触发该功能。我说错了吗?如果是这样,如何正确地做到这一点。

1 个答案:

答案 0 :(得分:1)

你的功能应该是sup.postForm = function(){....}

你应该在控制器/指令中注入$ http

angular.module('myApp.controllers', []).
    controller('SomeCtrl', ['$scope', '$http', function ($scope, $http) {
    // ...
});

然后你应该在你的html中调用

  <button class="btn btn-success" id="submit" ng-click="postForm()">Submit</button>