zoukankan      html  css  js  c++  java
  • [Javascript] Manage Application State with Immutable.js

    Learn how Immutable.js data structures are different from native iterable Javascript data types and why they provide an excellent foundation on which to build your application's state.

    Instead of them being mutable, they're always immutable, meaning they don't change from underneath you. The reference to them can change, but the data inside them cannot, which means you can build predictable and reliable state models on top of them. It becomes a lot easier to manage your application's state.

    console.clear();
    
    const ary = ["todo1", "todo2"];
    const ary2 = ary;
    console.log(ary[0]); // todo1
    
    ary2[0] = "done1";
    console.log(ary[0]); // done1
    
    // Immutable 
    
    function updateState(immutable, pos, value) {
      return immutable.set(pos, value);
    }
    
    const immutableState = Immutable.List(["foo1", "foo2"]);
    const immutableState2 = immutableState.set(0, "bar1");
    
    console.log(immutableState.get(0)); // foo1
    console.log(immutableState2.get(0)); // bar1

    Every time you use set() to set a new value, Immutable will return a new array.

  • 相关阅读:
    个人总结11
    进度条4,5
    对vivo自带输入法的评价
    个人总结10
    hdu5589Tree
    HDU5213 Lucky
    2018icpcShenYangE
    bzoj3683: Falsita
    cf396C. On Changing Tree
    cf600E. Lomsat gelral
  • 原文地址:https://www.cnblogs.com/Answer1215/p/4881252.html
Copyright © 2011-2022 走看看