1 | ;
|
2 | /**
|
3 | * 拷贝文件
|
4 | *
|
5 | * @class Pug2html
|
6 | * {
|
7 | * src:'', <string> 源文件路径
|
8 | * dist:'', <string> 输出路径
|
9 | * }
|
10 | */
|
11 | class Copy{
|
12 | constructor(option){
|
13 | const _ts = this;
|
14 |
|
15 | option = option || {};
|
16 |
|
17 | let m = _ts.m = {
|
18 | fs:require('fs-extra')
|
19 | },
|
20 | config = _ts.config = {};
|
21 |
|
22 | //配置写入到_ts.config
|
23 | for(let i in option){
|
24 | config[i] = option[i];
|
25 | };
|
26 | let src = config.src,
|
27 | dist = config.dist;
|
28 |
|
29 | return new Promise((resolve,reject)=>{
|
30 | m.fs.copy(src,dist,(err) => {
|
31 | if(err){
|
32 | reject({
|
33 | status:'error',
|
34 | msg:`拷贝 ${src}`,
|
35 | info:err
|
36 | });
|
37 | }else{
|
38 | resolve({
|
39 | status:'success',
|
40 | msg:`拷贝 ${dist}`,
|
41 | distPath:dist
|
42 | });
|
43 | };
|
44 | })
|
45 | });
|
46 | }
|
47 | }
|
48 | module.exports = Copy;
|