UNPKG

webpack-builder-react-xd

Version:

小盾安全前端团队构建器

68 lines (54 loc) 1.62 kB
#!/usr/bin/env node const chalk = require('chalk'); const { getBuilderConfig } = require('../lib/hlper'); // 配置项 const builderConfig = getBuilderConfig(); if (!builderConfig) { console.error(chalk.red('Error: 你必须在package.json中 添加builder-config配置, 具体配置请查看README')); process.exit(1); } const args = process.argv.slice(2); const scriptIndex = args.findIndex( x => x === 'dev' || x === 'build' ); const script = scriptIndex === -1 ? args[0] : args[scriptIndex]; let scriptPath; if ([ 'dev', 'build' ].includes(script)) { scriptPath = '../scripts/' + script; } else { console.log('Unknown script "' + script + '".'); process.exit(1); } if (args.includes('--micro')) { const microIndex = args.findIndex(v => v === '--micro'); const buildMircoMode = args.slice(microIndex + 1); if (buildMircoMode.length > 1) { console.log(chalk.red('--micro 命令之后只允许传入一个参数(要单独构建的文件名字),具体配置请查看README')); process.exit(1); } process.env.MICRO = true; process.MICRO_CONFIG = { mode: buildMircoMode.length ? 'SINGLE' : 'UNITY', name: buildMircoMode[0] || '', }; } if (args.includes('--profile')) { process.env.PROFILE = true; } if (script === 'build') { /** * 生产环境 三种情况 * 1. 开发环境 dev * 2. 测试环境 test * 3. 线上环境 prod */ // 默认线上 process.env.prod_env = 'prod'; if (args.includes('--dev')) { process.env.prod_env = 'dev'; } if (args.includes('--test')) { process.env.prod_env = 'test'; } } require(scriptPath);