javascript - Funktioniert Immutable mit React, um die Leistung zu verbessern?
学习ing
学习ing 2017-07-05 10:38:52
0
3
807

Reinigt es nicht, es einfach mit PureComponent zu vergleichen?
Ich denke, es kommt selten vor, dass sich die Statusreferenz ändert, der tatsächliche Wert jedoch nicht.

学习ing
学习ing

Antworte allen (3)
过去多啦不再A梦

我觉得immutable的好处是不可变,不会出现在其它地方被意外更改值的情况。还有可以快速比较,不需要一层一层的检查。

    学霸

    我觉得immutable的好处确实有,不可变、两对象比较都能在一定程度上提高性能。但是这种比较适合需要复杂数据结构同时频繁数据操作。
    如果对于一般的场景,只是增加了复杂度、文件大小。比如获取对象属性const obj = {a: 1, b: 2, c: 3}

    普通方式:

    const {a, b, c} = obj;

    immutable:

    const a = obj.get('a'); const b = obj.get('b'); const c = obj.get('c');

    而且如果是复杂场景,我们会使用redux,因为redux本身数据处理就是不可变,所以immutable也不适用。

      给我你的怀抱

      严格说起来immutable转换数据还会带来性能损耗。
      API很方便的可以对于非常深层数据的对比跟修改操作

      reducer.js

      [actions.UPDATE_PROJECT_LIST_AFTER_DELETE]: (state, { data }) => { let index = data.index return state.updateIn(['dataList',index,'status'], () => 'Deleted') }
        Neueste Downloads
        Mehr>
        Web-Effekte
        Quellcode der Website
        Website-Materialien
        Frontend-Vorlage
        Über uns Haftungsausschluss Sitemap
        Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!