【发布时间】:2018-01-17 15:38:27
【问题描述】:
当我执行 saveUser() 方法时,它显示错误,但用户可以保存到数据库中。怎么了?
错误信息:
angular1.5.3.min.js:116 SyntaxError: JSON 中位置 0 的意外标记 g 在 Object.parse (本机) 在 uc (localhost:8080/js/angular1.5.3.min.js:17:6) 在 ac (//localhost:8080/js/angular1.5.3.min.js:90:253) 在 //localhost:8080/js/angular1.5.3.min.js:91:164 在 q (//localhost:8080/js/angular1.5.3.min.js:7:355) 在 ed (localhost:8080/js/angular1.5.3.min.js:91:146) 在 c (/localhost:8080/js/angular1.5.3.min.js:92:403) 在本地主机:8080/js/angular1.5.3.min.js:128:305 在 m.$eval (//localhost:8080/js/angular1.5.3.min.js:142:467) 在 m.$digest (//localhost:8080/js/angular1.5.3.min.js:140:47)(匿名函数)@angular1.5.3.min.js:116(匿名函数)@angular1.5.3.min .js:89(匿名函数)@ angular1.5.3.min.js:128$eval @ angular1.5.3.min.js:142$digest @ angular1.5.3.min.js:140$apply @ angular1.5.3.min .js:143g@angular1.5.3.min.js:95x@
angular1.5.3.min.js:100v.onload @ angular1.5.3.min.js:101
js文件:
var app = angular.module('MyApp', ['ngResource']);
app.factory('baseRequest', ["$resource", function ($resource) {
return $resource("/apis/:id/users.req", {id: '@id'}, {
query: {method: 'get', isArray: false}
});
}]);
app.controller("MyCtrl", ["$scope", "baseRequest", function ($scope, baseRequest) {
/**
* all
*
**/
$scope.fetchAllUsers = function () {
$scope.users = baseRequest.query();
};
/**
* first show
*
**/
$scope.fetchAllUsers();
/**
* delete
*
**/
$scope.deleteUser = function (id, name) {
if (confirm("delete[" + name + "]?")) {
baseRequest.delete({id: id});
$scope.fetchAllUsers();
}
};
/**
* save
*
**/
$scope.saveUser = function (u) {
baseRequest.save(u);
$scope.fetchAllUsers();
};
}]);
这里是jsp文件:
<div style="float: left;margin-left: 20px;width: 350px;">
<span>UserName:</span><input type="text" ng-model="user.name" required><br>
<span>Password:</span><input type="password" ng-model="user.password" required><br>
<span>Email:</span><input type="email" ng-model="user.email" required><br>
<input type="button" ng-click="saveUser(user)" value="save_data"><br>
<span>user'content:{{user}}</span>
</div>
</body>
【问题讨论】:
-
你得到的 json 是什么? addUser 函数在哪里?而且baseRequest没有保存功能。
-
哦,对不起,我只是弄错了。不是 addUser 函数,应该是 saveUser 函数。我正在使用 Angularjs $resource 方法,所以我不知道它是什么 json。也许我应该尝试在 baseRequest 中添加一个保存功能。
-
那么一样!查询:{方法:'get',isArray:false},保存:{方法:“POST”}
-
你得到的 JSON 是什么?
-
我得到了这个 json 数据: