复制深层嵌套对象但省略特定键,其中键也是一个数组

Copy deep nested object but omitting specific key, where key is also an array

有很多类似的线程,但是这个问题有一个额外的困难,我至今找不到解决方案

我有一个这样的对象:

我想将这个对象深复制到一个新对象中,但是对于 'trainings' 数组中的每个元素,我不想完全复制 'sessions' 和 'user'

很少有线程提到 Lodash 方法 _.omit() 但这不适用于嵌套对象。另一个包 Deepdash 有 _.deepOmit() 方法,但问题是它不适用于数组的键。

我也尝试了以下解决方案

let filteredData = _.transform(data, function (filteredData, value, key) {
  filteredData[key] = _.isArray(value) && `sessions` in value ? _.omit(value, 'sessions') : value;
});

但也不成功

我怎样才能做到这一点?

这个包提供了这个问题的确切解决方案:

https://github.com/odynvolk/omit-deep-lodash

这是解决我的问题的方法:

let filteredData = omitDeep(data,"sessions", "user")