Javascript Immutablejs-更新嵌套映射和列表中的值

Javascript Immutablejs-更新嵌套映射和列表中的值,javascript,immutable.js,Javascript,Immutable.js,我有这个immutableJs映射: event: { days: [ { date: 1, sessions: [ { id: 1, name: 2, startTime: 1, endTime: 1,

我有这个immutableJs映射:

event: {
    days: [
        {
            date: 1,
            sessions: [
                {
                    id: 1,
                    name: 2,
                    startTime: 1,
                    endTime: 1,
                    description: 1,
                    detailsLink: 1,
                    details: {visible: true}
                },
                {
                    id: 2,
                    name: 2,
                    startTime: 2,
                    endTime: 2,
                    description: 2,
                    detailsLink: 2,
                    details: {visible: false}
                },
                {
                    id: 3,
                    name: 3,
                    startTime: 3,
                    endTime: 3,
                    description: 3,
                    detailsLink: 3,
                    details: {visible: true}
                }
            ]
        },
        {
            date: 2,
            sessions: [
                {
                    id: 1,
                    name: 2,
                    startTime: 1,
                    endTime: 1,
                    description: 1,
                    detailsLink: 1,
                    details: {visible: false}
                },
                {
                    id: 2,
                    name: 2,
                    startTime: 2,
                    endTime: 2,
                    description: 2,
                    detailsLink: 2,
                    details: {visible: false}
                },
                {
                    id: 3,
                    name: 3,
                    startTime: 3,
                    endTime: 3,
                    description: 3,
                    detailsLink: 3,
                    details: {visible: true}
                }
            ]
        }
    ]
}
我想更新那些可见的:真到可见:假。我尝试了很多不同的过滤方法,seq等等,但是没有成功


关于如何使用immutableJs实现这一点,您有什么想法吗?

在ES6中,它可能很容易翻译成immutableJs

const notVisibleEvents={
…事件,
天:events.days.map(d=>{
返回{
D
sessions:d.sessions.map(s=>{
返回{
s
详情:{
…详细信息,
可见:假
}
};
})
};
})
};

派对迟到者,但这如何(假设您的数据位于名为
data
的变量中):

data.setIn(["event", "days"],
    data.getIn(["event", "days"]).map(day => 
        day.set("sessions", day.get("sessions").map(session => 
            session.setIn(['details', 'visible'], false)))
    )
)