1 | // 项目下直接运行命令 rollup -c
|
2 |
|
3 | const babel = require('rollup-plugin-babel')
|
4 | const buble = require('rollup-plugin-buble')
|
5 | const resolve = require('rollup-plugin-node-resolve')
|
6 | const commonjs = require('rollup-plugin-commonjs')
|
7 | const replace = require('rollup-plugin-replace')
|
8 | const pkg = require('./package.json')
|
9 | const banner = '/*\n' +
|
10 | 'name,version,description,author,license'.split(',')
|
11 | .map((k) => ` * @${k}: ${pkg[k]}`).join('\n') +
|
12 | '\n */'
|
13 | const external = Object.keys(pkg.devDependencies)
|
14 |
|
15 | module.exports = {
|
16 | input: 'src/index.js', // entry -> input
|
17 | plugins: [
|
18 | // resolve({
|
19 | // jsnext: true,
|
20 | // main: true,
|
21 | // browser: true,
|
22 | // }),
|
23 | // commonjs(),
|
24 | // babel 遵循 es2015+ 标准,但执行较慢
|
25 | // babel({
|
26 | // exclude: 'node_modules/**'
|
27 | // }),
|
28 | // 结合 buble 比 babel 更快
|
29 | buble({
|
30 | exclude: 'node_modules/**'
|
31 | }),
|
32 | replace({
|
33 | exclude: 'node_modules/**',
|
34 | ENV: JSON.stringify(process.env.NODE_ENV || 'development')
|
35 | })
|
36 | ],
|
37 | external: external,
|
38 | targets: [
|
39 | {
|
40 | file: 'index.js', // dest -> file
|
41 | format: 'cjs'
|
42 | }/*, {
|
43 | file: 'utils.amd.js',
|
44 | format: 'amd'
|
45 | }, {
|
46 | file: 'utils.cjs.js',
|
47 | format: 'cjs'
|
48 | }, {
|
49 | file: 'utils.es.js',
|
50 | format: 'es'
|
51 | }, {
|
52 | file: 'utils.iife.js',
|
53 | format: 'iife'
|
54 | }, {
|
55 | file: 'utils.umd.js',
|
56 | format: 'umd'
|
57 | }*/
|
58 | ],
|
59 | banner: banner,
|
60 | // format: 'iife', // cjs amd es6 umd iife
|
61 | name: 'utils' // umd 或 iife 模式下,若入口文件含 export,必须加上该属性 moduleName -> name
|
62 | // file: 'utils.js', // 输出文件 dest -> file
|
63 | // sourcemap: false // 调试编译 sourceMap -> sourcemap
|
64 | } |
\ | No newline at end of file |