Как импортировать AlpineJS с помощью NPM?

#npm #gruntjs #alpine.js

#npm #gruntjs #alpine.js

Вопрос:

Как предполагается импортировать AlpineJS с помощью NPM?

В документах AlpineJS говорится:

Из npm: установите пакет из npm.

npm i alpinejs

Включите его в свой скрипт.

import 'alpinejs'

Я поместил эту последнюю строку в один из моих файлов JavaScript. Однако ничего не произошло. Я подумал, может быть, мне нужен такой пакет, как Grunt, чтобы этот импорт действительно что-то делал. Я бы не знал, как иначе клиент должен знать, что ‘alpinejs’ ссылается на alpine.js in node_modules/alpinejes/dist . Grunt просто позволяет строке оставаться такой, какая она есть, и не помещает файл AlpineJS в мой выходной каталог.

Чего я хочу достичь:

  • Используйте AlpineJS в клиенте, не будучи зависимым от CDN
  • Возможно: объединение alpine.js с другими файлами сценариев для уменьшения количества запросов к серверу

Ответ №1:

Для обработки вашего JS-файла вам нужен пакет, поддерживающий модули / импорт npm (который включает Alpine.js импорт). Webpack, rollup или parcel должны выполнять эту работу.

В противном случае да, вы могли бы объединить Alpine.js файл at node_modules/alpinejs/dist/alpine.js с вашим JS-файлом и используйте его (в этот момент вам не нужна инструкция import).

Ответ №2:

Вариант первый

 import Alpine from 'alpinejs'
window.Alpine = Alpine
Alpine.start();
  

Лучший вариант для меня

 import Alpine from 'alpinejs';
window.Alpine = Alpine;
queueMicrotask(() => {
    Alpine.start()
});
  

Комментарии:

1. У Alpine есть раздел об этом: alpinejs.dev/essentials/installation

2. @Atem18 у меня это не работает

3. @RoshanJha Так и должно быть. Опубликуйте свою конфигурацию.