Javascript 无法使用Angular JS发布
您好,我正在尝试使用AnguarJs发布数据,但有一些问题。我的js代码如下:Javascript 无法使用Angular JS发布,javascript,php,angularjs,Javascript,Php,Angularjs,您好,我正在尝试使用AnguarJs发布数据,但有一些问题。我的js代码如下: var app = angular.module('myApp', []); app.constant('appUrl', 'http://localhost/zara/rest/'); /*---- categories fetch code -------*/ app.controller('myController',['$scope','$http','appUrl', fu
var app = angular.module('myApp', []);
app.constant('appUrl', 'http://localhost/zara/rest/');
/*---- categories fetch code -------*/
app.controller('myController',['$scope','$http','appUrl', function($scope, $http , appUrl) {
$scope.newName = "";
$scope.postForm = function() {
var data = $.param({
name: $scope.newName
});
$http.post("http://localhost/zara/rest/api_customerlogin.php", data).success(function(data, status) {
$scope.hello = data;
console.log(data);
});
};
}]);
我得到了这个错误TypeError:无法读取未定义的属性'param',当我将代码更改为类似于这个时,我得到了这个错误
<script>
angular.module('myApp', [])
.controller('myController', ['$scope', '$http', function($scope, $http) {
this.loginForm = function() {
var user_data='user_email=' +this.inputData.email+'&user_password='+this.inputData.password;
$http({
method: 'POST',
url: 'login.php',
data: user_data,
headers: {'Content-Type': 'application/x-www-form-urlencoded'}
})
.success(function(data) {
console.log(data);
})
}
}]);
</script>
angular.module('myApp',[])
.controller('myController',['$scope','$http',函数($scope,$http){
this.loginForm=函数(){
var user_data='user_email='+this.inputData.email+'&user_password='+this.inputData.password;
$http({
方法:“POST”,
url:'login.php',
数据:用户数据,
标题:{'Content-Type':'application/x-www-form-urlencoded'}
})
.成功(功能(数据){
控制台日志(数据);
})
}
}]);
无法发布到login.html页面。这是我在AnguarJs上的第一个项目,因此不太熟悉。谢谢。在您尝试发布到的第一个代码中
http://localhost/zara/rest/api_customerlogin.php
您是否忘记将第二个示例中的login.php
更改为此url?请注意,在您为浏览器添加allow orgin access插件之前,post请求可能无法在本地环境中工作。但它在实际工作的网站上起作用
var app = angular.module('myApp', []);
app.constant('appUrl', 'http://localhost/zara/rest/');
app.controller('myController',function($scope, service, appUrl){
$scope.newName = "";
$scope.loading = false;
$scope.postForm = function() {
var data = $.param({
name: $scope.newName
});
$scope.loading = true;
service.makeThisRequest(appUrl + 'api_customerlogin.php', data).then(function(data){
$scope.hello = data;
console.log(data);
},function(error){
console.log(error);
}).finally(function(){
$scope.loading = false;
});
});
}]);
app.factory('service', function ($http) {
return {
makeThisRequest : function(url,params){
return $http.post(url,params);
}
};
});
你在服务文件app.serivce('service',[$http,function(){}])中试过了吗?没有,我只是用上面的代码试过代码。服务如何使用它?确切地说,$.param对你有什么作用?!,将数据更改为object
asvar data={name:$scope.newName}
这个错误是因为$
与jquery
和jquery.param
相关的$/code>是未定义的,另外一件事更好,如果你在angular中使用$http
作为服务。第二件事,我只是用一个伪URL粘贴代码。URL更改对代码没有影响。解释$.param
请?!这是为了什么?创建适合在URL查询字符串或Ajax请求中使用的数组、普通对象或jQuery对象的序列化表示。在传递jQuery对象的情况下,它应该包含具有名称/值属性的输入元素。我已经在PHP端添加了允许源代码。那么您得到了什么?