var lesson = {
	files: [
		{
			name: "main",
			content: "import { render } from \"solid-js/web\";\nimport { createSignal, onCleanup } from \"solid-js\";\n\nfunction Counter() {\n  const [count, setCount] = createSignal(0);\n\n  setInterval(() => setCount(count() + 1), 1000);\n\n  return <div>Count: {count()}</div>;\n}\n\nrender(() => <Counter />, document.getElementById('app'));"
		}
	]
};
var solved = {
	files: [
		{
			name: "main",
			content: "import { render } from \"solid-js/web\";\nimport { createSignal, onCleanup } from \"solid-js\";\n\nfunction Counter() {\n  const [count, setCount] = createSignal(0);\n\n  const timer = setInterval(() => setCount(count() + 1), 1000);\n  onCleanup(() => clearInterval(timer));\n\n  return <div>Count: {count()}</div>;\n}\n\nrender(() => <Counter />, document.getElementById('app'));"
		}
	]
};
var markdown = "Manche Frameworks verbinden ihre Aufräum-Methoden als Rückgabewerte ihrer Seiteneffekte oder Lifecycle-Methoden. Da alles in einem Solid-Render-Baum in einem (möglicherweise untätigen) Effekt lebt und verschachtelt sein kann, haben wir `onCleanup` zu einer primären Methode gemacht. Man kann diese in jedem Scope aufrufen und die übergebene Funktion wird ausgeführt, wenn der Scope neu aufgebaut wird und wenn er entgültig entfernt wird.\n\nBenutze es in Deinen Komponenten oder Effekten. Nutze es in benutzerdefinierten Direktiven. Nutze es in welchem Teil der synchronen Ausführung des reaktiven Systems auch immer.\n\nDas Signal-Beispiel von der Einführung hat nicht hinter sich aufgeräumt. Beheben wir das, indem wir den `setInterval`-Aufruf hiermit ersetzen:\n\n```js\nconst timer = setInterval(() => setCount(count() + 1), 1000);\nonCleanup(() => clearInterval(timer));\n```";
var lifecycles_oncleanup = {
	lesson: lesson,
	solved: solved,
	markdown: markdown
};

export { lifecycles_oncleanup as default, lesson, markdown, solved };
