UNPKG

streakingman-cli

Version:

封装了一些常用操作的命令行工具

42 lines (36 loc) 1.22 kB
import { execSync } from 'child_process'; import inquirer from 'inquirer'; import { checkVersion } from '../utils/check-version'; import { fileGenerator, TemplateName } from '../utils/file-generator'; export const reactComp: (compName: string) => void = async (compName) => { checkVersion(); if (!compName) { const { compName: inputCompName } = await inquirer.prompt([ { type: 'input', name: 'compName', message: '请输入组件名', default: 'MyComp', }, ]); compName = inputCompName; } const nameArray = compName.split(''); nameArray[0] = nameArray[0].toLowerCase(); compName = nameArray.join(''); nameArray[0] = nameArray[0].toUpperCase(); const CompName = nameArray.join(''); execSync(`mkdir ${CompName}`); for (const templateName of [ 'reactCompIndex', 'reactCompInterface', 'reactCompStyle', ] as TemplateName[]) { fileGenerator({ templateName, pathName: CompName, option: { compName, CompName }, }); } console.log(`📦 react组件${CompName}文件生成完毕`); };