Как опубликовать скрипт на стороне клиента, используя npm? - PullRequest
1 голос
/ 05 июня 2019

Мой пакет nodejs содержит код для выполнения как на сервере, так и один файл .js для выполнения в браузерах. Чтобы использовать скрипт браузера, он, очевидно, должен быть помещен в элемент script в файле HTML. Мой вопрос заключается в том, существует ли стандартная практика / соглашение в отношении того, как этот файл браузера .js должен быть открыт для npm (или веб-пакета, или чего-либо еще) способом, независимым от веб-пакета, gulp, grunt или других инструментов упаковки. Например, поместив его куда-нибудь в каталог scripts/ или включив упрощенное трехстрочное промежуточное программное обеспечение nodejs / expressjs, которое при доступе через http://example.com/scripts/myscript.js будет отправлять содержимое моего скрипта в браузеры.

Я нашел эту статью , но это лишь объясняет тривиальные детали того, как использовать элемент script на странице HTML, а не как заставить npm устанавливать скрипт в стандартизированной папке ресурсов. для захвата по статическим маршрутам обслуживания, инструментам управления активами или подобным.

Ответы [ 2 ]

0 голосов
/ 05 июня 2019

CDN - ваш лучший выбор, если вы не упаковываете веб-контент в один пакет. Если ваше веб-содержимое находится в одном пакете, вы можете использовать

"scripts": {
    "prepublish": "cp <source_path_of_file.js> <destination_dir>"
}

в package.json, чтобы упаковать его как часть вашего пакета npm.

0 голосов
/ 05 июня 2019

Если вы публикуете свой пакет в NPM, альтернативой, которая может работать в вашей ситуации, может быть использование https://unpkg.com/ CDN. Все пакеты, опубликованные на NPM, доступны через этот CDN.

Тогда в своем коде внешнего интерфейса вы можете просто ссылаться на тот единственный js-файл, который вам нужен.

  <script src="https://unpkg.com/yourpackage/path/to/your/file.js"></script>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...