# Что определяет порядок выполнения JS-скриптов компонентов темы?

**URL:** <https://meta.discourse.org/t/what-controls-the-order-of-execution-for-theme-components-j-s/190410>\
**Category:** Development\
**Created:** [14.Май.2021 12:17:05 UTC](https://meta.discourse.org/t/what-controls-the-order-of-execution-for-theme-components-j-s/190410 "2021-05-14T12:17:05Z")\
**Posts on this page:** 1\
**Showing post:** 1

<div class="post-metadata">

**Author:** ![craigconstantine](https://sea3.discourse-cdn.com/meta/user_avatar/meta.discourse.org/craigconstantine/32/511195_2.png) [@craigconstantine](https://meta.discourse.org/u/craigconstantine)\
**Post date:** [14.Май.2021 12:17:05 UTC](https://meta.discourse.org/t/what-controls-the-order-of-execution-for-theme-components-j-s/190410/1 "2021-05-14T12:17:05Z")

</div>

В моей теме есть JavaScript (я уже печально известен? `;)`), который изменяет DOM, добавляя элементы через `api.decorateCooked(…`. Он вставляет различные элементы заголовка HTML.

Также у меня установлен компонент темы DiscoTOC.

Однако добавление обычного `<div data-theme-toc="true"></div>`, который DiscoTOC распознаёт и разворачивает, не создаёт оглавление, включающее мои динамически добавленные элементы.

Полагаю, это может быть так просто, как порядок выполнения: если DiscoTOC сработает до того, как мой JavaScript добавит больше элементов…

Что определяет порядок выполнения, если несколько фрагментов кода темы на JavaScript вызывают `api.cooked(`?

---

_[View the full topic](https://meta.discourse.org/t/what-controls-the-order-of-execution-for-theme-components-j-s/190410)._
