Я действительно застрял в этом выяснении того, что я упустил, я не тот специалист по javascript, если кто-то может сказать мне, что я сделал не так, я действительно ценю.
У меня есть рабочий код:
if (value_ == "group") {
fetch("http://localhost/someapi"+value_).then(r => { return r.json()})
.then(json => {
var data = `{ "group" : [{"name":"foo","tag":"bar"},{"name":"bool","tag":"lean"}] }`;
var data = JSON.parse(data);
var groupName = data.group.map(current => current.name);
var groupTag = data.group.map(current => current.tag);
console.log(data);
console.log(`json: ${data.group[0].name}`);
});
}
приведенный выше код будет работать и получать все данные, которые я хотел, но JSON получен из:
var data = `{ "group" : [{"name":"foo","tag":"bar"},{"name":"bool","tag":"lean"}] }`;
, затем я попытался получить JSON из URL, который возвращает тот же самыйзначение как данные var выше.Но это не работает.
, который я изменил var data = JSON.parse(data);
на data = JSON.parse(json)
и удалил "var data = { "group" : [{"name":"foo","tag":"bar"},{"name":"bool","tag":"lean"}] }
;"
И это выдает ошибку: (node:10868) UnhandledPromiseRejectionWarning: SyntaxError: Unexpected end of JSON input
Я также попробовал этот код:
fetch("http://localhost/someapi"+value_).then(r => { return r.json()})
.then(json => {
parseJSON(JSON.stringify(json));
function parseJSON(str){
var data = JSON.parse(str);
var groupName = data.group.map(current => current.name);
var groupTag = data.group.map(current => current.tag);
console.log(data);
console.log(`json: ${data.group[0].name}`);
}
});
}
, это дает мне ошибку: (node:12668) UnhandledPromiseRejectionWarning: TypeError: Cannot read property 'map' of undefined
.
Спасибо и простите мой английский.