У меня есть свой собственный API отдыха, к которому я хочу подключить response-admin, поэтому я пишу свой собственный dataProvider, чтобы сделать это.
Однако во время GET_LIST я получил сообщение об ошибке «Не удается прочитать свойство hasOwnProperty of undefined», и я не могу найти, откуда оно.
Ниже я вставил данные провайдера, который я написал.
Данные, которые я получаю, являются действительным JSON в формате {data: [...]}, но я не могу преобразовать ответ HTTP обратно в response-admin, чтобы сделать его видимым на моей странице (я получаювыше сообщение об ошибке).
import { GET_LIST, fetchUtils } from 'react-admin';
import { stringify } from 'query-string';
const apiUrl = 'http://xxx.yyy.zz/api/v1';
export default (type, resource, params) => {
const convertDataRequestToHTTP = (type, resource, params) => {
switch (type) {
case GET_LIST: {
url = `${apiUrl}/${resource}`;
break;
}
};
const convertHTTPResponse = (response, type, resource, params) => {
const { headers, json } = response;
switch (type) {
case GET_LIST:
return {
data: json,
total: parseInt(
headers
.get('content-range')
.split('/')
.pop(),
10
),
};
default:
return { data: json };
}
};
const { fetchJson } = fetchUtils;
const { url, options } = convertDataRequestToHTTP(
type,
resource,
params
);
return fetchJson(url, options).then(response =>
convertHTTPResponse(response, type, resource, params)
);
};
};