#javascript #polymer #rollup #lit-element
#javascript #полимер #свертка #lit-элемент
Вопрос:
Я разрабатываю приложение в Polymer и lit-element и использую rollup для объединения всех файлов. Дело в том, что у меня есть файл, имя которого «config.js » в корневом каталоге, в котором его функция заключается в настройке приложения на основе потребностей пользователя. Приложение загрузит этот файл конфигурации, чтобы показать, что необходимо. Я не хочу, чтобы этот файл был включен в пакет, потому что я хочу, чтобы он динамически изменялся пользователем.
Конфигурация, которая у меня есть в файле приложения, выглядит следующим образом:
import sources from '../config.js';
конфигурационный файл находится в корневом каталоге и выглядит следующим образом:
export { sources as default };
const sources = [
......
];
моя конфигурация свертки:
import commonjs from 'rollup-plugin-commonjs';
import resolve from 'rollup-plugin-node-resolve';
const plugins = [
resolve({
mainFields: false,
browser: true,
}),
commonjs()
];
export default [
{
input: 'src/index.js',
output: {
file: 'dist/app.js',
format: 'umd'
},
plugins: [...plugins],
},
];
Когда я rollup -c
config.js
добавляю файл в пакет, это не то, что я хочу
Ответ №1:
Я использую зависимость от разработчика "rollup-plugin-copy": "^3.3.0"
. В моем rollup.config.js
файле (начиная с того, что @open-wc
создается для меня) я добавляю
import copy from 'rollup-plugin-copy';
...
plugins: [
html(),
copy({
// copy over images files and manifest
targets: [
{ src: 'images', dest: 'dist' },
{ src: 'manifest.json', dest: 'dist' },
{ src: 'config', dest: 'dist' },
...
],
...
Это копирует мой image
и config
каталог и содержимое, manifest.json
файл и другие.