Я пытаюсь провести рефакторинг своего приложения, чтобы оно работало с избыточностью.У меня есть действие приставки, где первый файл console.log производит вывод (строка 3 ниже, которая показывает URL-адрес API).Никакого другого выхода не видно.Также, похоже, что catch не вызывается (я проверял это).
fetch, похоже, ничего не делает.Однако код извлечения сработал, когда он находился на своем первоначальном месте (перед рефакторингом) в componentWillMount.
Что не так с моим извлечением?Спасибо за любую помощь!
export function getPlatzBelegungen(court, day1, day2) {
const url = HOSTNAME + "/intern/api/platz.php?op=ra&p=" + court + "&ds=" + day1 + "&de=" + day2;
console.log(url);
return function(dispatch) {
return fetch(url)
.then(result => {
if (result.ok) {
console.log("###>>> result.ok");
return result.json();
} else {
throw new Error('Fehler beim Laden der Platzbuchungsdaten');
}
})
.then(result => {
console.log("###>>> courtData berechnen");
let courtData = result.records.map ( r => {
let k = r.id;
let cn = computeBelClasses (r.starts_at, r.ends_at);
console.log("PLATZ:" + r.court)
let spieler =
r.p1
+ (r.p2 ? ', ' + r.p2 : ' ')
+ (r.p3 ? ', ' + r.p3 : ' ')
+ (r.p4 ? ', ' + r.p4 : ' ');
return (
<Link key={k} to={'/belegungsdetails/' + r.id}>
<div key={k} className={cn}>
<strong>{r.starts_at.substring(11,16)} </strong>
{spieler}
</div>
</Link>
)
})
dispatch({ type: BELEGUNGEN_LOADED, payload: courtData });
})
.catch(
dispatch({ type: BELEGUNGEN_LOAD_FAILED, payload: [] }));
};
};