初始化功能

Immer为了保证尽可能小的体积,所以对其中的一些功能设计了开关,在生产模式下,没有启用的功能将不会占据任何编译输出大小。

这些设计的开关及其使用条件可以参考以下列表。

  • enableES5(),用于在应用中启用ES5支持,主要用在比较旧的Javascript环境中,例如IE和React Native。
  • enableMapSet(),用于ES2015环境下,启用对原生Map和Set的操作。
  • enablePatches(),用于启用JSON补丁支持,可以跟踪对Draft对象所作出的所有更改。
  • enableAllPlugins(),启用以上所列举的所有功能。

以上开关函数只需要在应用运行期间执行一次即可。对于React应用来说,这个操作可以在负责启动应用的启动文件中完成。