var lesson = {
	files: [
		{
			name: "main",
			content: "import { render } from 'solid-js/web';\nimport { createSignal, createEffect } from 'solid-js';\n\nfunction Counter() {\n  const [count, setCount] = createSignal(0);\n\n  return <button>Click Me</button>;\n}\n\nrender(() => <Counter />, document.getElementById('app'))\n"
		}
	]
};
var solved = {
	files: [
		{
			name: "main",
			content: "import { render } from 'solid-js/web';\nimport { createSignal, createEffect } from 'solid-js';\n\nfunction Counter() {\n  const [count, setCount] = createSignal(0);\n  createEffect(() => {\n    console.log(\"The count is now\", count());\n  });\n\n  return <button onClick={() => setCount(count() + 1)}>Click Me</button>;\n}\n\nrender(() => <Counter />, document.getElementById('app'));\n"
		}
	]
};
var markdown = "`Сигналы` — это отслеживаемые значения, но они — только половина уравнения. В дополнение к ним есть наблюдатели, которые могут быть обновлены этими отслеживаемыми значениями. `Эффект` — один из таких наблюдателей; у него есть побочный эффект, зависящий от `Сигналов`.\n\n`Эффект` можно создать, импортировав `createEffect` из `solid-js` и предоставив ему функцию. Эффект автоматически подписывается на любой `Cигнал`, который считывается во время выполнения функции, и перезапускается при изменении любого из них.\n\nИтак, давайте создадим `Эффект`, который будет запускаться повторно при изменении `count`:\n\n```jsx\ncreateEffect(() => {\n\tconsole.log('The count is now', count());\n});\n```\n\nЧтобы обновлять наш `Сигнал` `count`, прикрепим обработчик кликов к нашей кнопке:\n\n```jsx\n<button onClick={() => setCount(count() + 1)}>Click Me</button>\n```\n\nТеперь нажатие на кнопку добавит нам лог в консоль. Это относительно простой пример, но чтобы понять, как работает Solid, вы должны представить, что каждое выражение в JSX — это самостоятельный Эффект, который повторно выполняется при изменении зависимых `Сигналов`. Вот как весь рендеринг работает в Solid: с точки зрения Solid, _весь рендеринг — это всего лишь побочный эффект реактивной системы_.\n\n> Эффекты, которые разработчики создают с помощью `createEffect`, запускаются после завершения рендеринга и в основном используются для планирования обновлений, которые взаимодействуют с DOM. Если вы хотите изменить DOM раньше, используйте [`createRenderEffect`] (https://www.solidjs.com/docs/latest/api#createrendereffect).\n";
var introduction_effects = {
	lesson: lesson,
	solved: solved,
	markdown: markdown
};

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