使用father(umi-library)做组件打包

3,290 阅读1分钟

项目根目录新建.fatherrc.js文件github.com/umijs/fathe…

export default {
    target: 'node', // 类型:默认为browser
    entry: 'src/index.js', // 入口文件
    cssModules: false, // 是否开启cssModules
    extractCSS: false, // 是否提取css为单独文件
    cjs: 'rollup', // cjs格式
    esm: 'rollup', // ems格式
    lessInBabelMode: true // bable模式下less编译,
    extraBabelPresets:[],
    extraBabelPlugins:[] // 配置babel用,具体可查看文档
}

也可写ts文件,新建.fatherrc.ts,注意,用ts的话必须要配置tsconfig.json,否则build时会报错

export default {
    target: 'node', // 类型:默认为browser
    entry: 'src/index.ts', // 入口文件
    cssModules: false, // 是否开启cssModules
    extractCSS: false, // 是否提取css为单独文件
    cjs: 'rollup', // cjs格式
    esm: 'rollup', // ems格式
    lessInBabelMode: true // bable模式下less编译,
    extraBabelPresets:[],
    extraBabelPlugins:[] // 配置babel用,具体可查看文档
}

.tsconfig.json文件内容(这里只列了部分配置)

{
  "compilerOptions": {
    "target": "es5",
    "module": "esnext",
    "moduleResolution": "node",
    "jsx": "preserve",
    "allowJs": true,
    "skipLibCheck": true,
    "esModuleInterop": true,
    "experimentalDecorators": true,
    "strict": true,
    "forceConsistentCasingInFileNames": true,
    "suppressImplicitAnyIndexErrors": true,
    "declaration": true,
    "resolveJsonModule": true
  },
  "exclude": ["node_modules", "dist", "lib"]
}