Как связать библиотеку с webpack?

Я хочу создать интерфейсную библиотеку. Поэтому я хочу использовать webpack. Мне особенно нравится загрузчик css и изображений. Однако я могу использовать только файлы, отличные от JS, если я использую webpack. Поскольку я создаю библиотеку, я не могу гарантировать, что пользователь моей библиотеки тоже будет.

Есть ли способ связать все с модулем UMD, чтобы опубликовать его? Я попытался использовать несколько точек входа, однако я не могу требовать от модуля.

Заранее спасибо

Ответ 1

Вы можете найти хорошее руководство для создания библиотек в веб-сайте Webpack 2.0 . Вот почему я использую синтаксис версии 2 в webpack.config.js для этого примера.

Вот Github repo с примерной библиотекой.

Он строит все файлы из src/ (js, png и css) в один пакет JS, который может быть просто необходим как модуль umd.

для этого нам нужно указать следующие настройки в webpack.config.js:

output: {
    path: './dist',
    filename: 'libpack.js',
    library: 'libpack',
    libraryTarget:'umd'
},

и package.json должны иметь:

"main": "dist/libpack.js",

Обратите внимание, что вам нужно использовать соответствующие загрузчики для упаковки всего в один файл. например base64-image-loader вместо file-loader