javascript 使用Ramda重新格式化嵌套属性(assoc,propOr,prop,pluck)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 使用Ramda重新格式化嵌套属性(assoc,propOr,prop,pluck)相关的知识,希望对你有一定的参考价值。
const data = {
"elements": {
"edges": [
{
"node": {
"id": "1",
"extraData": {
"field1": "John",
"field2": "Doe",
}
}
}
]
}
};
const elementEdges = R.propOr([], 'edges', data.elements);
const elements = R.pluck('node', elementEdges);
const formatElement = element => R.assoc('id', R.prop('id', element), R.prop('extraData', element));
// Alternative Code
// const getId = element => R.prop('id', element); // 1
// const getExtraData = element => R.prop('extraData', element); // {"field1": "John", "field2":"Doe"}
// const formatElement = element => R.assoc('id', getId(element), getExtraData(element)); // Assigns 1 to id Property and merges ExtraData {"field1": "John", "field2":"Doe"}
R.mapObjIndexed( formatElement, elements); // {"0": {"field1": "John", "field2": "Doe", "id": "1"}}
以上是关于javascript 使用Ramda重新格式化嵌套属性(assoc,propOr,prop,pluck)的主要内容,如果未能解决你的问题,请参考以下文章
markdown 使用ramda按嵌套值过滤对象数组
markdown 使用ramda通过嵌套值过滤对象数组:有时您无权访问后端,并且您希望过滤来自
ramda js 在第二和第三级更新深度嵌套的数组
javascript Ramda JS最常用的函数
javascript Ramda` then`示例
javascript Ramda`pathEq` vs`propEq`