优化打包脚本
This commit is contained in:
		| @@ -50,8 +50,6 @@ const start = () => { | ||||
|     }]) | ||||
|   }).then(res => new Promise(resolve => { | ||||
|     const {PROJECT} = res | ||||
|     let install = path.join(__dirname, PROJECT, 'index.js') | ||||
|     fsExtra.ensureFile(install) | ||||
|     const coreLib = path.join(__dirname, PROJECT, 'core.import.json') | ||||
|     fsExtra.readJson(coreLib, (err, data) => { | ||||
|       chalkTag.info("加载核心库配置..") | ||||
| @@ -94,6 +92,7 @@ const start = () => { | ||||
|           name: "CONFIRM", | ||||
|           type: 'confirm', | ||||
|           message: "未读取到业务应用配置文件,是否要打包整个packages?", | ||||
|           default: false | ||||
|         }]).then(res => { | ||||
|           if (res.CONFIRM) { | ||||
|             findApp(appDir, file => { | ||||
| @@ -115,11 +114,12 @@ const start = () => { | ||||
|     }) | ||||
|   })).then(prj => new Promise(resolve => { | ||||
|     if (prj == 'dvui') { | ||||
|       return resolve(prj) | ||||
|     } | ||||
|       resolve(prj) | ||||
|     } else { | ||||
|       chalkTag.info('正在生成打包文件...') | ||||
|     let bin = path.join(__dirname, prj.toString(), 'index.js'), | ||||
|         coreApps = cores.map(e => `{name:'${e.name}',component:require('../../${e.component}').default}`), | ||||
|       let install = path.join(__dirname, PROJECT, 'index.js') | ||||
|       fsExtra.ensureFile(install) | ||||
|       let coreApps = cores.map(e => `{name:'${e.name}',component:require('../../${e.component}').default}`), | ||||
|           bizApps = apps.map(e => `{name:'${e.name}',component:require('../../${e.component}').default}`), | ||||
|           comps = [...coreApps, ...bizApps], | ||||
|           content = ` | ||||
| @@ -154,13 +154,14 @@ const start = () => { | ||||
|             install | ||||
|          } | ||||
|         ` | ||||
|     fsExtra.outputFile(bin, content, err => { | ||||
|       fsExtra.outputFile(install, content, err => { | ||||
|         if (err) { | ||||
|           chalkTag.error(err) | ||||
|           reject() | ||||
|         } else chalkTag.done('生成打包文件') | ||||
|         resolve(prj) | ||||
|       }) | ||||
|     } | ||||
|   })).then(project => new Promise((resolve, reject) => { | ||||
|     fsExtra.readJson(path.join(__dirname, project.toString(), 'package.json'), (err, json) => { | ||||
|       let cmd = `vue-cli-service build --target lib --dest project/${project}/dist project/${project}/${project == 'dvui' ? 'entries' : 'index'}.js --name ${json.name}` | ||||
| @@ -171,18 +172,18 @@ const start = () => { | ||||
|         log(stdout); | ||||
|         if (!err) { | ||||
|           chalkTag.done('打包成功!') | ||||
|           resolve(project) | ||||
|           resolve({project, name: json.name}) | ||||
|         } else { | ||||
|           chalkTag.error(err) | ||||
|           reject() | ||||
|         } | ||||
|       }) | ||||
|     }) | ||||
|   })).then(project => { | ||||
|   })).then((prj) => { | ||||
|     chalkTag.info('正在发布中...') | ||||
|     let cmd = `cd ${project}&npm unpublish --force&npm publish` | ||||
|     let cmd = `npm unpublish ${prj.name} --force&npm publish --workspace project/${prj.project}` | ||||
|     exec(cmd, { | ||||
|       cwd: path.join(__dirname, '.') | ||||
|       cwd: path.join(__dirname, '..') | ||||
|     }, (err, stdout) => { | ||||
|       log(stdout); | ||||
|       if (!err) { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user