1 | # transform-es
|
2 |
|
3 | 对 ts, es6, scss, less, css 进行转换,并输出到指定目录
|
4 |
|
5 | ## install & usage
|
6 |
|
7 | `npm install --save-dev transform-es`
|
8 |
|
9 | `npx transform-es init`
|
10 |
|
11 | `npx transform-es src`
|
12 |
|
13 | ## cli
|
14 |
|
15 | > `transform-es src -d lib -t esm -c -w`
|
16 | >
|
17 | > `transform-es src -d lib -t web -c -w [-m]`
|
18 |
|
19 | > `transform-es src -d lib -t node -c -w`
|
20 |
|
21 | - `-f, --outFile` 输出到文件,只有单文件转换有效
|
22 | - `-d, --outDir` 输出到指定目录,默认为 lib
|
23 | - `-c, --clean` 转换前清空输出目录
|
24 | - `-w, --watch` 是否监控文件改变
|
25 | - `-t, --target` 指定输出目标: node|web|esm|cjs|commonjs|amd|umd|systemjs|auto 默认`web`
|
26 | - `--config` 配置文件 默认: `transform-es.config.js`
|
27 | - `--state` 传递给 transform-es.config.js 的数据
|
28 |
|
29 | ### transform-es.config.js
|
30 |
|
31 | ```js
|
32 | module.exports = function (options, state) {
|
33 | return {
|
34 | babel: {
|
35 | //...babel options
|
36 | decoratorsBeforeExport: true,
|
37 | useFlow: true,
|
38 | loose: true,
|
39 | runtimeOptions: {},
|
40 | presets: [],
|
41 | plugins: [],
|
42 | },
|
43 | eslint: {},
|
44 | postcss: {},
|
45 | };
|
46 | };
|
47 | ```
|
48 |
|
49 | ## api
|
50 |
|
51 | ```
|
52 | transformEs( src, dest, options );
|
53 | ```
|
54 |
|
55 | ## options
|
56 |
|
57 | ```
|
58 | {
|
59 | glob: ["**/*", "**/*.*", "**/.*"],
|
60 | clean: true, //转换前清空输出目录
|
61 | watch: false,
|
62 | ignore: null, // file => boolean
|
63 | filter: null,// file => boolean
|
64 | log: true, // 打印转换日志信息
|
65 | babel: {
|
66 | decoratorsBeforeExport: true,
|
67 | useFlow: true,
|
68 | loose: true,
|
69 | runtimeOptions: {},
|
70 | presets: [],
|
71 | plugins: [],
|
72 | ...presetOptions
|
73 | },
|
74 | eslint: {},
|
75 | postcss: {},
|
76 | // https://www.npmjs.com/package/gulp-dart-scss
|
77 | scss: {},
|
78 | // https://www.npmjs.com/package/gulp-less
|
79 | less: {},
|
80 | cssModule: {
|
81 | test: /\.module.(less|scss|css)$/,
|
82 | esModule: true,
|
83 | },
|
84 | raw: {
|
85 | test: /\.svg$/,
|
86 | },
|
87 | // (stream, options, meta) => stream
|
88 | transform: null
|
89 | }
|
90 | ```
|
91 |
|
92 | ## examples
|
93 |
|
94 | ```
|
95 | const transformEs = require('transform-es');
|
96 |
|
97 | transformEs('src', 'lib', {
|
98 | watch: true
|
99 | });
|
100 |
|
101 | ```
|