Home / Function/ legacy_pre_effect() — svelte Function Reference

legacy_pre_effect() — svelte Function Reference

Architecture documentation for the legacy_pre_effect() function in effects.js from the svelte codebase.

Entity Profile

Dependency Diagram

graph TD
  ec90eacc_f7f8_e67c_0b88_cac225152c82["legacy_pre_effect()"]
  1ae6fa4e_16ee_acdf_5e28_17eb0819fddb["effects.js"]
  ec90eacc_f7f8_e67c_0b88_cac225152c82 -->|defined in| 1ae6fa4e_16ee_acdf_5e28_17eb0819fddb
  ea5280ff_3b87_42ee_3823_3570b76a5779["push()"]
  ec90eacc_f7f8_e67c_0b88_cac225152c82 -->|calls| ea5280ff_3b87_42ee_3823_3570b76a5779
  7494b934_a3b8_689e_91b6_8435e26461c5["render_effect()"]
  ec90eacc_f7f8_e67c_0b88_cac225152c82 -->|calls| 7494b934_a3b8_689e_91b6_8435e26461c5
  a814b193_e12a_4037_c3c8_dfd45f3bd0bb["untrack()"]
  ec90eacc_f7f8_e67c_0b88_cac225152c82 -->|calls| a814b193_e12a_4037_c3c8_dfd45f3bd0bb
  style ec90eacc_f7f8_e67c_0b88_cac225152c82 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

packages/svelte/src/internal/client/reactivity/effects.js lines 299–317

export function legacy_pre_effect(deps, fn) {
	var context = /** @type {ComponentContextLegacy} */ (component_context);

	/** @type {{ effect: null | Effect, ran: boolean, deps: () => any }} */
	var token = { effect: null, ran: false, deps };

	context.l.$.push(token);

	token.effect = render_effect(() => {
		deps();

		// If this legacy pre effect has already run before the end of the reset, then
		// bail out to emulate the same behavior.
		if (token.ran) return;

		token.ran = true;
		untrack(fn);
	});
}

Domain

Subdomains

Frequently Asked Questions

What does legacy_pre_effect() do?
legacy_pre_effect() is a function in the svelte codebase, defined in packages/svelte/src/internal/client/reactivity/effects.js.
Where is legacy_pre_effect() defined?
legacy_pre_effect() is defined in packages/svelte/src/internal/client/reactivity/effects.js at line 299.
What does legacy_pre_effect() call?
legacy_pre_effect() calls 3 function(s): push, render_effect, untrack.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free