0
我對自我調用函數有點迷茫,我曾經做過一個http.get函數來得到這樣(工作)從一個JSON數據:如何做一個自我調用的AJAX文章?
var Callmodule = (function(){
var urljsonEntrata= "modello.json";
function getmodules(){
var req = $.ajax({
url: urljsonEntrata,
dataType: 'json',
type: 'GET'
});
req.done(function(data){
console.log('ajax to '+urljsonEntrata+' DONE');
console.log(data);
console.log('-----------------------------');
});
req.fail(function(jqXHR, textStatus, errorThrown) {
console.log('ajax to '+urljsonEntrata+' FAIL');
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
console.log('-----------------------------');
});
return req;
}
return {
callGetmodules : getmodules(),
}
})();
我已經這樣做了,因爲我想使用它在vue.js應用程序,我已經以這種方式調用它:
methods:{
getModuleData : function(){
var req = Callmodule.callGetmodules;
var self = this;
req.done(function(data){
self.modello=data;
self.isLoading=false;
});
req.fail(function(jqXHR,textStatus,errorThrown){
console.log('richiesta andata a male')
});
}
現在我用同樣的方法都試過了http.POST,只是它不工作
var PostModule = (function(datadapostare){
var PostUscita= "http://www.website.com/filephp.php";
var datapost = datadapostare
function postquote(){
var req = $.ajax({
type: 'POST',
url: PostUscita,
data: datapost,
dataType: 'json',
});
req.done(function(data){
console.log('ajax to '+PostUscita+' DONE');
console.log(data);
console.log('-----------------------------');
});
req.fail(function(jqXHR, textStatus, errorThrown) {
console.log('ajax to '+PostUscita+' FAIL');
console.log(jqXHR);
console.log(textStatus);
console.log(errorThrown);
console.log('-----------------------------');
});
return req;
}
return {
Postmodules : postquote(),
}
})();
,並在這裏,我將它張貼的方式(認爲它包裹在裏面vuejs方法):
postData : function(){
var req = Postmodule.Postmodules;
var self = this;
req.done(function(data){
self.modello=data;
self.isLoading=false;
});
req.fail(function(jqXHR,textStatus,errorThrown){
console.log('richiesta andata a male')
});
}
爲什麼它不會做去?並在哪種方式,我必須傳遞數據對象發佈?
預先感謝您
那是因爲你沒有傳遞任何一個更簡單的API數據?你的'datadapostare'和'datapost'變量將在你的Postmodule.Postmodules請求中返回'undefined'。 – Terry