From 48bd6d86d8e01407664c093a4af896a00089fbb6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E5=98=89=E6=B6=B5?= Date: Mon, 30 Sep 2019 09:53:09 +0800 Subject: [PATCH] build: throw error when compile style failed --- build/build-lib.js | 10 +++++++--- build/build-style.js | 17 +++++++++++------ 2 files changed, 18 insertions(+), 9 deletions(-) diff --git a/build/build-lib.js b/build/build-lib.js index 9338de5ac..3ab53d9fa 100644 --- a/build/build-lib.js +++ b/build/build-lib.js @@ -16,15 +16,19 @@ const tasks = [ 'cross-env NODE_ENV=production webpack -p --color --config build/webpack.pkg.js' ]; -tasks.forEach(task => { +tasks.every(task => { signale.start(task); const interactive = new Signale({ interactive: true }); interactive.pending(task); + const result = shell.exec(`${task} --silent`); + if (result.code !== 0) { interactive.error(task); - } else { - interactive.success(task); + return false; } + + interactive.success(task); + return true; }); diff --git a/build/build-style.js b/build/build-style.js index b604d84d7..fa5d18073 100644 --- a/build/build-style.js +++ b/build/build-style.js @@ -48,14 +48,19 @@ async function dest(output, paths) { // compile component css async function compile() { let codes; - const paths = await glob(['./es/**/*.less', './lib/**/*.less'], { absolute: true }); + try { + const paths = await glob(['./es/**/*.less', './lib/**/*.less'], { absolute: true }); - codes = await Promise.all(paths.map(path => fs.readFile(path, 'utf-8'))); - codes = await compileLess(codes, paths); - codes = await compilePostcss(codes, paths); - codes = await compileCsso(codes); + codes = await Promise.all(paths.map(path => fs.readFile(path, 'utf-8'))); + codes = await compileLess(codes, paths); + codes = await compilePostcss(codes, paths); + codes = await compileCsso(codes); - await dest(codes, paths); + await dest(codes, paths); + } catch (err) { + console.log(err); + process.exit(1); + } } compile();