gpt4 book ai didi

javascript - 如何将js中的一堆对象映射到另一个对象

转载 作者:行者123 更新时间:2023-11-30 14:11:32 25 4
gpt4 key购买 nike

我有一个对象,我需要返回每个对象以检查其映射结果。我下面的代码的问题是在这一行

style: { ...map[settings] },

我需要一种方法来遍历每个设置并将其传递给 map 。不确定如何在 es6 中以最有效的方式去做?

这是传递到 PassThrough 组件的设置值

const settings = {
block_background: GradientGreen,
block_spacing: padding,
};

这是我的组件

const PassThrough = ({ children, settings }) => {
const map = {
GradientGreen: {
background: 'linear-gradient(-95deg, green, blue 100%)',
},
padding: '20px',
};

const cloneChild = () => {
return cloneElement(children, {
style: { ...map[settings] },
});
};

return (
<Fragment>
{cloneChild()}
<Fragment/>
);
};

最佳答案

最短的大概是:

 inlineStyle: Object.assign({}, ...Object.entries(settings).map(([k, v]) => ({ [k]: map[v] })))

但实际上我会将 settings 更改为:

const settings = original => {
block_background: original.GradientGreen,
block_spacing: original.padding,
};

那么就是:

inlineStlye: settings(map)

关于javascript - 如何将js中的一堆对象映射到另一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54355373/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com