While not niagara, the way we do it with cascade is to disable the actor and delay its “destroy” until the emitter has done its task.
so > on hit > disable actor & emitter > delay until emitter is done (trough delay or other means) > destroy.
Make sure the emitters (I only have cascade knowledge, but assume its the same) do not have “destroy on deactivate” on.
this way when the emitter is deactivated the particles already spawned will do their thing, while no new ones will be emitted.