我在RollupJS上遇到了麻烦。
我有一个组件库使用类型记录,react,AntDesign使用汇总。
在这里,我的rollup配置:
import babel from 'rollup-plugin-babel';
import commonjs from 'rollup-plugin-commonjs';
import postcss from 'rollup-plugin-postcss';
import typescript from 'rollup-plugin-typescript2';
import peerDepsExternal from 'rollup-plugin-peer-deps-external';
import url from 'rollup-plugin-url';
import postcssModules from 'postcss-modules';
import pkg from './package.json';
const cssExportMap = {};
export default {
input: 'src/index.ts',
output: [
{
file: pkg.main,
format: 'cjs',
exports: 'named',
sourcemap: true,
},
{
file: pkg.module,
format: 'es',
exports: 'named',
sourcemap: true,
},
],
external: [
{
'react': 'react',
'react-dom': 'react-dom'
},
// Make antd library styles to be external to current project
/^antd[.]*/,
],
plugins: [
peerDepsExternal(),
url(),
typescript({
exclude: ['*.d.ts', '**/*.d.ts', '**/*.stories.tsx', '**/*.spec.tsx'],
rollupCommonJSResolveHack: true,
clean: true,
}),
babel({
babelrc: false,
plugins: [['import', { libraryName: 'antd', style: true }]],
extensions: ['.js', '.jsx', '.ts', '.tsx'],
exclude: 'node_modules/**',
}),
commonjs({
include: 'node_modules/**'
}),
postcss({
plugins: [
postcssModules({
getJSON (id, exportTokens) {
cssExportMap[id] = exportTokens;
}
})
],
getExportNamed: false,
getExport (id) {
return cssExportMap[id];
},
extract: 'build/styles.css',
use: ['sass', ['less', { javascriptEnabled: true, modifyVars: {
'hack': `true; @import "./public/theme/variables.module.less"`
}}]]
})
],
}; 我的package.json有一些脚本:
"build": "rollup -c",
"prepare": "yarn run build"在本地,一切正常工作,所有文件都生成。
但是,当我在创建-反应-应用程序应用程序中使用我的库作为依赖项时。
"ui-kit": "git+https://****:x-oauth-basic@github.com/****/ui_kit_fe.git"只在生成文件夹中生成index.js,
应该是:- style.css - index.es.js - index.js.map
但他们不在那里..。
发布于 2022-04-19 10:27:14
我自己也遇到过类似的问题。我的构建文件夹存在于.gitignore文件中,因此它的所有内容(除了main入口点)都被排除在安装之外。我已经通过将构建文件夹添加到files数组中的package.json来修复这个问题。
"files": ["build/**/*"],
"main": "build/index.js",您可以在这里找到更多信息:https://docs.npmjs.com/cli/v7/configuring-npm/package-json#files
https://stackoverflow.com/questions/60670297
复制相似问题