- 定义:是React中的一个调用结构,用于包装一个方法,可以统一管理一个方法的开始和结束(相当于一个黑盒,可以封装任何方法)
- 结构:intialize => perform(method) => close
- 应用:需要在指定函数运行前或运行后执行的方法可以通过此方法封装,即使函数运行过程中有异常抛出,这些方法仍可继续运行,实例化transcation时只需要提供相关的方法即可
- 简述:
transaction就像是一个“壳子”,可以首先将传入的方法使用wrapper封装起来,然后再调用transcation类里的perform方法去执行他。在执行anyMethod之前,perform会先执行所有wrapper的intialize方法,在anyMethod全部执行完毕之后,再执行所有wrapper的close方法 - 补充:
- 如果在调用栈中出现了
intialize,perform,close,closeAll,notifyall, 那么当前应该处于一个transcation之中 - 如果当前处在事务流当中,则代表线程正在执行一些操作(此时的setState是异步的)
- 如果在调用栈中出现了
如有纰漏之处,烦请各位加以指正,感谢!