如何向现有Javascript对象的新键添加数组?
这是我的全部功能,它来自使用redux的React本机项目,并使用axios和redux thunk进行ajax调用:如何向现有Javascript对象的新键添加数组?,javascript,ecmascript-6,Javascript,Ecmascript 6,这是我的全部功能,它来自使用redux的React本机项目,并使用axios和redux thunk进行ajax调用: export function FetchEtiquetas() { return function (dispatch) { axios.get( url ) .then(response => { response.data.map( record => {
export function FetchEtiquetas() {
return function (dispatch) {
axios.get( url )
.then(response => {
response.data.map( record =>
{
axios.get('https://e.dgyd.com.ar/wp-json/wp/v2/media?_embed&parent='+record.id)
.then(response => {
// compose the new json string with each post gallery
let data_json = '[';
response.data.map( record =>
data_json = data_json + '{ "title": "' + record.title.rendered + '", "subtitle": "'+ record.caption.rendered.slice(3, -5) + '", "illustration": "' + record.source_url + '"},'
);
data_json = data_json.slice(0, -1)+"]"; // removes last comma
record.gallery = date_json;
console.log("date_json record.gallery: "+record.gallery);
})
.catch(error => {
console.log(error.response)
});
console.log("gallery in data action: "+record.gallery);
}
);
dispatch({ type: FETCH_ETIQUETAS_SUCCESS, payload: response.data })
}
);
}
}
在映射函数中,这是记录格式:
{
id: 521,
date: "2014-04-16T16:24:04",
date_gmt: "2014-04-16T16:24:04",
modified: "2018-01-12T23:58:22"
}
这是完成后的data_json格式:
[
{ "title": "img6", "subtitle": "", "illustration": "domain.com/img6.jpg"},
{ "title": "img7", "subtitle": "", "illustration": "domain.com/img7.jpg"},
{ "title": "img8", "subtitle": "", "illustration": "domain.com/img8.jpg"}
]
如何向每条记录添加数据
谢谢 我可以通过将asignment更新为:
record.gallery = JSON.parse(data_json);
这是一个简单的改变,但我在评论中指出了这一点:
原始对象不是JSON对象,而是普通javascript
反对
听起来你可能已经有了一些异步的东西,并且你可能在它们可用之前分配或记录它们。。。您需要发布更多的代码/上下文。还有一点不清楚,什么可能是JSON字符串,什么可能是代码片段中的实际JavaScript对象。提示,这是一种文本交换格式。在第一个代码块中显示的是Javascript对象,有时称为Javascript文本。这不是JSON。让我更新我的问题,给出更多信息context@JamesThorpe你是对的。我刚刚更新了代码,以便您可以看到异步部分。