Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs 为什么我的表格没有被清除?_Angularjs_Angularjs Directive_Angularjs Scope - Fatal编程技术网

Angularjs 为什么我的表格没有被清除?

Angularjs 为什么我的表格没有被清除?,angularjs,angularjs-directive,angularjs-scope,Angularjs,Angularjs Directive,Angularjs Scope,我做了两个控制器。一个用于通过API调用在数据库中添加数据,另一个用于发送电子邮件。奇怪的是(因为现在我不明白为什么),添加功能工作正常,并在操作后清除表单,用于发送电子邮件的第二个控制器不清除表单,也不执行console.log,但它确实完美地发送了电子邮件 如果我从emailController中删除+'sendmail',表单将被清除,console.log也可以正常工作。但当然,那时电子邮件是不会发送的 我将把两个控制器的代码放在这里。希望有人能帮我找出为什么发送电子邮件的控制器没有按照

我做了两个控制器。一个用于通过API调用在数据库中添加数据,另一个用于发送电子邮件。奇怪的是(因为现在我不明白为什么),添加功能工作正常,并在操作后清除表单,用于发送电子邮件的第二个控制器不清除表单,也不执行console.log,但它确实完美地发送了电子邮件

如果我从emailController中删除+'sendmail',表单将被清除,console.log也可以正常工作。但当然,那时电子邮件是不会发送的

我将把两个控制器的代码放在这里。希望有人能帮我找出为什么发送电子邮件的控制器没有按照我想要的(和期望的)方式工作

谢谢你的帮助

添加审阅功能

.controller('ReviewController', function ($scope, $http) {
  $scope.addReview = function () {
    $http.post(API, $scope.review)
      .success(function () {
        $scope.reviews.push($scope.review);
        $scope.review = {};
      })
      .error(function (data) {
        $scope.error = 'Posting review not successful';
        console.log(data);
      });
  };
})
sendEmail控制器

.controller('emailController', function ($scope, $http) {
  $scope.sendMail = function () {
    $http.post(API + 'sendmail', $scope.email)
      .success(function () {
        console.log('Mail send');
        $scope.email = {};
      })
      .error(function (data) {
        $scope.error = 'Posting review not successful';
        console.log(data);
        console.log('Mail not send');
      });
  };
});

如果“console.log”不起作用,那么就没有响应,这是查询级别的错误,不是吗?听起来合乎逻辑。但正如我所说,当我删除+‘sendmail’时,它就可以工作了,即console.log并清除表单。此外,addReview功能工作得很好,我似乎也在做同样的事情。转到浏览器开发工具的“网络”选项卡,检查URL是否有200作为响应代码?告诉我响应代码是什么。
$http.post(API+'/sendmail',$scope.email)
Hi Kalhano,不需要添加额外的斜杠。var API已包含斜杠“”。如果我按照你的建议再加一个斜杠,电子邮件就不会再发送了。