Github js файл не загружается (прямая ссылка) - PullRequest
0 голосов
/ 14 июля 2020

Я создал библиотеку кодирования для publi c для использования, поместив тег <script> в тег <head>, но когда я пытаюсь использовать функцию, он говорит undefined. Я связал URL-адрес с файлом index.js, но он не загружает его клиенту.

<head>
<script src="https://github.com/McJoe21/coderslib/blob/master/index.js"></script>
</head>

Когда я запускаю console.log(ranInteger(1,10)), который я определил в моем index.js файле, я получаю a ranInteger is not defined ошибка.

Ответы [ 2 ]

0 голосов
/ 14 июля 2020

Технически говоря, GitHub не разрешает доступ к исходному коду со своего сайта, как CDN, однако из этого вопроса StackOverflow есть обходной путь. Я бы не рекомендовал его использовать, но вы можете использовать «https://cdn.jsdelivr.net/gh/», чтобы заставить ваш скрипт работать (от пользователя @anayarojo в StackOverflow).

URL-адрес в вашем случае будет выглядеть так:

https://cdn.jsdelivr.net/gh/McJoe21/coderslib/index.js

Шаблон для URL: https://cdn.jsdelivr.net/gh/<username>/<repository>/<file>

0 голосов
/ 14 июля 2020

Файл, который вы пытаетесь импортировать, является средством просмотра файла на GitHub. Чтобы импортировать необработанные данные для этого файла, вы должны использовать этот код:

<script>
   const source = 'https://raw.githubusercontent.com/McJoe21/coderslib/master/index.js';
   fetch(source).then((response) => {
      return response.text()
   }).then((response) => {
      eval(response);
   }).catch((error) => {
      console.error(`An error occured while attempting to load the "${source}" resource!`);
      console.error(error);
   });
</script>

Поскольку GitHub не разрешает напрямую импорт своего пользовательского контента, вам нужно будет обернуть исходный URL-адрес в выше блока fetch-eval.

...