Говоря о жизненном цикле апплета WeChat

Апплет WeChat

Я думал о том, чтобы написать что-нибудь, чтобы записать историю своего роста, и, наконец, я должен начать практиковаться.
Это первый раз, когда я пишу блог, я надеюсь, вы можете дать несколько советов

предисловие

(1) Почему апплет WeChat

Я только закончил в этом году, плюс дни стажировки, я в компании почти год, в течение которого я писал соответствующие функции апплета, и я знаком с некоторыми базовыми функциями апплета.

(2) Технологияродной js +redux+ Официальный API апплета WeChat

Сегодня я в основном говорю о своем понимании жизненного цикла мини-программ WeChat.Хотя я смог запросить соответствующие документы на разных платформах, я чувствую, что могу организовать свои мысли, записывая их, и я надеюсь, что смогу получить совет больших коров.

Разобрать

Апплет в основном делится на два жизненных цикла: глобальный жизненный цикл + жизненный цикл страницы.
Жизненный цикл приложения мини-программы

Жизненный цикл приложения в основном называется в app.js, в основном:

  • onLaunch -- инициализация апплета завершена, и он запускается только один раз глобально
  • onShow -- когда апплет запускается или выходит на передний план из фона
  • onHide -- Выполняется, когда апплет переходит на задний план с переднего плана
  • onError — когда апплет запускает скрипт с ошибкой или вызов API завершается с ошибкой, он будет выполнен с сообщением об ошибке.
  • onPageNotFound -- Выполняется, когда страница апплета не существует

    Порядок выполнения: onLaunch --> onShow --> onHide

  • Жизненный цикл страниц мини-программы

    Жизненный цикл страниц в основном относится к жизненному циклу в js, соответствующем каждому файлу, в основном:

  • onLoad — выполняется при загрузке страницы только один раз
  • onReady — выполняется при первом отображении страницы, только один раз
  • onShow -- выполняется при отображении страницы, выполняется несколько раз
  • onHide — выполняется, когда страница переходит на задний план с переднего плана
  • onUnload -- выполняется, когда страница выгружается
  • Примечание. Когда для переключения страниц требуется многократный рендеринг данных для изменения состояния, рекомендуется использовать его в onShow, а когда его нужно инициализировать только один раз, его можно использовать в onLoad или onReady. Когда таймер необходимо очистить, его можно использовать в onUnload.

    Порядок выполнения: onLoad --> onShow --> onReady --> onHide

    Жизненный цикл запускается при переключении страниц: Когда страница A загружается в первый раз, жизненный цикл, запускаемый страницей A, выглядит следующим образом: onLoad --> onShow --> onReady При переключении со страницы A на страницу B страница A запускает onHide, и последовательность жизненного цикла запускается страница B такая же, как и выше.Когда страница возвращается на страницу A, срабатывает onUnload, а когда кеш очищается и страница A снова заходит, срабатывает только onShow.

    Жизненный цикл создания страниц

    В официальной документации апплета есть картинка, показывающая процесс инстанцирования, я ее просто взял, можете сами проверитьDevelopers.WeChat.QQ.com/mini программа…

    Объяснение: как показано ниже

    Рабочий механизм

    концепция:

    Горячий старт: Это означает, что после успешного запуска апплета вы щелкаете x в верхнем левом углу или нажимаете кнопку «Домой», чтобы выйти из апплета. Апплет не уничтожается напрямую, а входит в механизм фонового запуска. Когда апплет открыт, апплет снова выходит на передний план из фона в это время, и страница перерисовывается.Этот процесс является горячим стартом.

    Холодный запуск: Относится к моменту, когда апплет загружается в первый раз (никогда не открывался), или когда вы удаляете апплет, или он автоматически уничтожается WeChat, когда вы снова загружаете апплет, этот процесс является холодным запуском.

    Примечание: апплет запускает жизненный цикл onLaunch только при холодном запуске.

    Суммировать

    Время жизни апплета:

  • Откройте апплет: (App)onLaunch --> (App)onShow --> (Pages)onLoad --> (Pages)onShow --> (pages)onReady
  • Перейти на следующую страницу: (Страницы)onHide --> (Далее)onLoad --> (Далее)onShow --> (Далее)onReady
  • Вернуться на предыдущую страницу: (curr)onUnload --> (pre)onShow
  • Оставьте апплет: (App)onHide
  • Введите еще раз: апплет не уничтожается --> (App)onShow (выполните приведенную выше последовательность), апплет уничтожается, и (App)onLaunch начинает выполняться снова.