powered by simpleCommunicator - 2.0.49     © 2025 Programmizd 02
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Nuxt JS дождаться загрузки скрипта для компонента
4 сообщений из 4, страница 1 из 1
Nuxt JS дождаться загрузки скрипта для компонента
    #39952489
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет, пишу Nuxt js приложение, в одном компоненте которого нужно подгрузить тяжелые js-файлы (9 мб и 1 мб).
Сразу при создании компонента (в методе asyncData) мне необходимо работать с функционалом, который подключается в этих файлах.
И получается так, что файлы еще не подгрузились, а логика с использованием js уже работает, соответственно все валится.
Мне необходимо поймать момент, когда js файлы уже загружены.
Файлы загружаю в секции head компонента:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
head: {
    script: [
      {
        src: "2.js",
        defer: false,
        async: true
     
      },
      {
        src: "/1.js",
        defer: true
      }
    ]
  }


Вроде бы есть решение с использование встроенного в Nuxt vue-meta, которое описывается в статье , но оно абсолютно не рабочее.
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
  head: {
    script: [
      {
        src: "2.js",
        defer: false,
        async: true,
        callback: () => {
          console.log(this);
        }//так же как описано в статье, в консоли выводится 'undefined'
      },
      {
         src: "/1.js",
        defer: true,
        callback: function() {
          console.log(this); // {src: "/1.js", defer: true, callback: ƒ}
        }
      }
    ]
  }


При различных вариантах я не получаю объект VueComponent'a, где мог бы уже перехватить событие завершения загрузки скриптов.
Подскажите плиз.
...
Рейтинг: 0 / 0
Nuxt JS дождаться загрузки скрипта для компонента
    #39952490
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Всем привет, пишу Nuxt js приложение, в одном компоненте которого нужно подгрузить тяжелые js-файлы (9 мб и 1 мб).
Сразу при создании компонента (в методе asyncData) мне необходимо работать с функционалом, который подключается в этих файлах.
И получается так, что файлы еще не подгрузились, а логика с использованием js уже работает, соответственно все валится.
Мне необходимо поймать момент, когда js файлы уже загружены.
Файлы загружаю в секции head компонента:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
head: {
    script: [
      {
        src: "2.js",
        defer: false,
        async: true
     
      },
      {
        src: "/1.js",
        defer: true
      }
    ]
  }


Вроде бы есть решение с использование встроенного в Nuxt vue-meta, которое описывается в статье , но оно абсолютно не рабочее.
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
  head: {
    script: [
      {
        src: "2.js",
        defer: false,
        async: true,
        callback: () => {
          console.log(this);
        }//так же как описано в статье, в консоли выводится 'undefined'
      },
      {
         src: "/1.js",
        defer: true,
        callback: function() {
          console.log(this); // {src: "/1.js", defer: true, callback: ƒ}
        }
      }
    ]
  }


При различных вариантах я не получаю объект VueComponent'a, где мог бы уже перехватить событие завершения загрузки скриптов.
Подскажите плиз.
...
Рейтинг: 0 / 0
Nuxt JS дождаться загрузки скрипта для компонента
    #39953337
artas
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vb_sub,

document.addEventListener("DOMContentLoaded", function() {
// твой код
});
это если ванильный JS

либо, смотри аналогичный функционал для Nuxt js (99% что есть)
...
Рейтинг: 0 / 0
Nuxt JS дождаться загрузки скрипта для компонента
    #39954600
vb_sub
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
очень стыдно, в общем нашел свой косяк
нужно было делать так:
Код: javascript
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
 head() {
    return {
      script: [
        {
          src: "1.js",
          defer: true,
          // Changed after script load
          callback: () => {
            this.loaded = true;
            
          }
        }
      ]
    };
  },
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / HTML, JavaScript, VBScript, CSS [игнор отключен] [закрыт для гостей] / Nuxt JS дождаться загрузки скрипта для компонента
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]