Is there a cleaner way to immutably update a deeply nested attribute? (I feel like this is not very clean)

This page summarizes the projects mentioned and recommended in the original post on /r/typescript

Our great sponsors
  • SurveyJS - Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • Immer

    Create the next immutable state by mutating the current one

  • monocle-ts

    Functional optics: a (partial) porting of Scala monocle

  • You could have a look at the monocle-ts library. It was designed to deal with this kind of problem.

  • SurveyJS

    Open-Source JSON Form Builder to Create Dynamic Forms Right in Your App. With SurveyJS form UI libraries, you can build and style forms in a fully-integrated drag & drop form builder, render them in your JS app, and store form submission data in any backend, inc. PHP, ASP.NET Core, and Node.js.

    SurveyJS logo
  • shades

    A lodash-inspired lens-like library for Javascript (by jamesmcnamara)

  • There’s also https://github.com/jamesmcnamara/shades. It’s less of a direct Haskell port than some of the other lens libraries, and I found the interface pretty intuitive

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts