From 92516a7753b5124e16715eaefd98bc98bd44c64d Mon Sep 17 00:00:00 2001 From: aixianling Date: Thu, 5 May 2022 15:16:28 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96=E6=89=93=E5=8C=85=E8=84=9A?= =?UTF-8?q?=E6=9C=AC?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- project/build.js | 43 ++++++++++++++++++++++--------------------- 1 file changed, 22 insertions(+), 21 deletions(-) diff --git a/project/build.js b/project/build.js index 0da1c102..95e93705 100644 --- a/project/build.js +++ b/project/build.js @@ -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,14 +114,15 @@ const start = () => { }) })).then(prj => new Promise(resolve => { if (prj == 'dvui') { - return resolve(prj) - } - chalkTag.info('正在生成打包文件...') - let bin = path.join(__dirname, prj.toString(), 'index.js'), - 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 = ` + resolve(prj) + } else { + chalkTag.info('正在生成打包文件...') + 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 = ` const apps = [${comps.toString()}] const install = function (Vue) { if (install.installed) return Promise.resolve() @@ -154,13 +154,14 @@ const start = () => { install } ` - fsExtra.outputFile(bin, content, err => { - if (err) { - chalkTag.error(err) - reject() - } else chalkTag.done('生成打包文件') - resolve(prj) - }) + 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) {