transaction<T> function Null safety

T transaction<T>(
  1. T fn(
    1. {ReactiveContext? context}

    During a transaction, no derivations (Reaction or Computed) will be run and will be deferred until the end of the transaction (batch). Transactions can be nested, in which case, no derivation will be run until the top-most batch completes


    T transaction<T>(T Function() fn, {ReactiveContext? context}) {
      final ctx = context ?? mainContext
      try {
        return fn();
      } finally {