Я не уверен, как работает newQuery.newDataCall(symptom, locationPromise)
, но я думаю, что вы неправильно используете locationPromise
. Учитывая, что второй аргумент newDataCall
принимает координаты местоположения, ваш код должен выглядеть примерно так:
$(document).ready(function(){
$("#submit").submit(function(){
event.preventDefault();
let newQuery = new ApiCall();
const symptom = $("#user-input").val();
const location = $("#user-location").val();
let locationPromise = newQuery.locationCall(location);
locationPromise.then(function(response){
let locationBody = JSON.parse(response);
// return the result of the API call
return locationBody;
},function(error){
$('.showErrors').text(`There was an error processing your
request: ${error.message}`);
}).then(function(result){
// result === locationBody
let promise = newQuery.newDataCall(symptom, result);
promise.then(function(response){
let body = JSON.parse(response);
console.log(body);
const output = parseData(body);
const display = parseString(output);
$(".output-field").html(display);
}, function(error) {
$('.showErrors').text(`There was an error processing your
request: ${error.message}`);
});
})
});
});
Надеюсь, это поможет.
'позвольте rec..., и...' синтаксис, который Вы ищете.
let rec F() =
G()
and G() =
F()
См. также Приключения в Co-рекурсии F#.
Так как вопрос о методах, и ответ Brian о функциях, возможно, полезно указать, что можно использовать подобный синтаксис для типов:
type A() =
let b = new B()
member x.MethodA() = b.MethodB()
and B() =
member x.MethodB() = ()
Обратите внимание также, что участникам 'позволяют rec' по умолчанию (на самом деле, я не думаю, что они могут быть не рекурсивными).