![](/img/trans.png)
[英]Ajax POST request json data undefined using Sails.js and Mongodb
[英]Using AngularJS ajax to post data to API in sails.js backend
我是新手,对于使用AngularJS将表单数据发布到sails.js的API感到有些困惑,但是该表单无法正常工作,并出现了以下错误信息: TypeError:string不是一个函数
我在想什么可能是错的。 我怀疑$http.post()
使用的API错误,但是我不确定。
我有以下的Employee
模型和EmployeeController
方法称为regEmployee()
员工模式:
module.exports = {
attributes: {
name:{
type:"string",
required:true,
minLength: 2
},
empnum:{
type:"string",
required:true,
unique: true
},
email:{
type:"email",
required:true,
unique: true
}
}
};
regEmployee()方法:
$scope.regEmployee = function() {
$http.post("http://localhost:1337/employee/create", {name: $scope.employee.name,
empnum: $scope.employee.number, email: $scope.employee.email}
).success($scope.message = "successful registration"
).error($scope.message = "failed registration");
}
HTML中的表格:
<form name="newEmp" ng-submit="regEmployee()" novalidate>
<div class="form-group-lg">
<label for="name">Employee Name: </label>
<input type="text" id="name" placeholder="Employee Name" ng-model="employee.name" name="name" ng-required="true">
</div>
<div class="form-group-lg">
<label for="number">Employee Number: </label>
<input type="number" id="number" placeholder="Employee Number" ng-model="employee.number" name="number" ng-required="true">
</div>
<div class="form-group-lg">
<label for="email">Employee Email: </label>
<input type="email" id="email" placeholder="Employee Email" ng-model="employee.email" name="email" ng-required="true">
</div>
<div class="form-group">
<button type="submit" class="btn btn-primary">Submit</button>
</div>
</form>
问题是您正在将字符串传递给.success和.error函数,而不是回调函数。 你需要像
$scope.regEmployee = function() { $http.post("http://localhost:1337/employee/create", {name: $scope.employee.name, empnum: $scope.employee.number, email: $scope.employee.email} ).success(function() {$scope.message = "successful registration";}) ).error(function() {$scope.message = "failed registration"}); }
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.