CLI與您自己的結構創建或編輯反應或反應本機組件
通過紗線和交互式模式
$ yarn add -D reactcci
$ yarn rcci
或通過NPM和標誌
$ npm i -D reactcci
$ npx rcci --name Header Body Footer --dest src/App
通過NPM安裝:
npm install --save-dev reactcci
通過紗線安裝:
yarn add --dev reactcci
在第一次運行時,CLI會詢問您有關自動配置的信息。只需運行一個命令:
npx rcci
此命令使用基本模板設置創建文件rcci.config.js和模板文件夾。
配置文件包含下一個參數:
folderPath
根目錄將您的組件或路徑數組放置
默認: src/
templatesFolder
通往自己組件模板的路徑
默認值: templates
multiProject
允許您通過幾個項目設置單聲道申請書的配置
默認值: false
skipFinalStep
允許您關閉上次檢查步驟
默認值: false
checkExistenceOnCreate
允許您在創建上打開檢查組件的存在,以避免更換
默認值: false
templates
具有組件結構的對象
processFileAndFolderName
字符串或函數允許您將組件名稱重新映射到文件夾名稱和文件名前綴
默認值: PascalCase
類型:
camelCasePascalCasesnake_casedash-case(name: string, parts: string[], isFolder: boolean) => string例子:
{
... config ,
processFileAndFolderName : ( name , parts , isFolder ) =>
isFolder ? name : parts . map ( ( part ) => part . toLowerCase ( ) ) . join ( '-' )
} placeholders
您可以用來構建自己的組件模板的佔位符列表
預設:
#NAME#
#STYLE#用於CSS模塊導入#STORY_PATH# for Storybook標題
afterCreation
用腳本進行對象來處理您在創建之後提交的對象
默認值: undefined
例子:
{
... config ,
afterCreation : {
prettier : {
extensions : [ '.ts' , '.tsx' ] , // optional
cmd : 'prettier --write [filepath]'
}
}
} 每個佔位符都是一個獲取一些數據來構建您自己的佔位符的函數。
在多組件創建期間,每個組件都將調用所有功能。
例子:
placeholders: {
NAME : ( { componentName } ) => componentName
}設置此之後,您可以在模板文件中使用#NAME#使用此佔位符。
在下面,您可以看到所有可用數據和功能的列表以創建一個新的數據。
| 場地 | 描述 |
|---|---|
project | 項目名稱以多項目模式 |
componentName ,objectName | 組件或其他對象的名稱在多模式模式下 |
objectType | 用戶選擇的對像類型。默認情況下是component 。 |
pathToObject | 對象文件夾的路徑 示例: src/components |
destinationFolder | 要創建的對象文件夾的相對路徑 示例: App/Header/Logo |
objectFolder | 絕對通往對象(組件)文件夾的路徑 |
relativeObjectFolder | 對象(組件)文件夾的相對路徑 |
filePrefix | 已處理的對象(組件)文件名稱 |
folderName | 處理的對象(組件)文件夾名稱 |
files | 正在創建的文件對象 |
getRelativePath(to: string) | 功能以獲取到任何其他路徑的相對路徑 示例: ../../src/helpers helpers |
join(...parts: string) | 函數以加入路徑的一部分。 例子: join(project, destinationFolder, componentName) Project/Footer/Email |
stringToCase(str: string, toCase: string) | 功能以將任何字符串映射到情況。 例子: stringToCase('dash-case-string', 'PascalCase') => DashCaseString |
--update , -u--dest , -d--skip-search , -sdest參數--name , -n--files , -f--files style test component[1]style和test類的可選文件,並將選擇第二種類型的組件--project , -p--slsskipFinalStep之類的最後一致步驟如果您需要生成其他內容,而不僅僅是組件,則可以設置模板數組。
示例Bellow:
{
... config ,
templates : [
{
name : 'component' , // will be added to default folderPath folder
files : {
index : {
name : 'index.ts' ,
file : 'component.ts'
}
}
} ,
{
name : 'service' ,
folderPath : 'services/' , // will be added by the specific path
files : {
index : {
name : 'index.ts' ,
file : 'service.ts'
}
}
}
]
}