Я пытаюсь создать библиотеку с использованием rollup, material-ui и некоторой зависимости.
rollup.config. js
module.exports = config => {
config.input = {
index: './src/index.js',
wrapper: './src/lib/wrapper/index.js',
Button: './src/lib/Button/index.js'
};
config.output = [
{
globals: {},
format: 'esm',
dir: './dist',
name: 'Test'
}
];
return config;
};
index. js перед сборкой с помощью rollup:
export { default as Button } from './lib/Button';
export { default as Wrapper } from './lib/wrapper';
index. js после сборки с накоплением:
import 'react';
import '@material-ui/core/Button';
export { default as Button } from './Button.js';
export { default as Wrapper } from './wrapper.js';
Кнопка после сборки с накоплением:
import React from 'react';
import { Button } from '@material-ui/core';
var Button = function Button() {
return /*#__PURE__*/React.createElement(Button, {
variant: "contained"
}, "Default");
};
export default Button;
Как вы можете видеть мой index. js после сборки с накоплением включить импорт кода '@ material-ui / core / Button'; из дочернего компонента (Button) как это удалить? потому что, когда мы используем только оболочку, а не кнопку, наше приложение объединяет все зависимости от material-ui. какие-либо предложения?
Примечание: включить material-ui в peerDependencies, а внешний или глобальный не сработал результат все тот же файл записи по-прежнему импортирует библиотеку из дочернего файла