اجزای React را در لحظه ایجاد کنید
https://www.youtube.com/watch?v=tMfx4Cb4IVk
⚛️ کد در Github
فهرست
انگیزه ها
در اینجا نحوه سازماندهی کامپوننت هایم آمده است:
composant /
|
--- MyButton/
|
--- myButton.module.scss
|
--- MyButton.tsx
|
--- MyArticle/
|
--- myArticle.module.scss
|
--- MyArticle.tsx
برای مؤلفه MyButton، باید ماژول و مؤلفه را «پیوند» کنید:
// MyButton.tsx
import styles from "./myButton.module.scss"
type MyButtonProps = {label:string}
const MyButton = (props: MyButtonProps) => {
const {label} = props
return (<button className={styles.btn}>{label}</button>)
}
export default MyFirstAuto
// myButton.module.scss
.btn{
// styles...
}
البته ما می توانیم ایجاد کنیم قالب های فایل اما همیشه در مورد ایجاد است:
- پوشه،
- سپس فایل ها را نامگذاری کنید
- ماژول را به کامپوننت وارد کنید
- اضافه کردن کلاس …
مراحلی که می توانند تکراری باشند و زمان زیادی را تلف کنند. ⌛
1. فایل را ایجاد کنید
یک فایل جدید به نام create-component.sh ایجاد کنید و آن را در ویرایشگر متن مورد علاقه خود باز کنید.
touch create-component.sh
2. اسکریپت Le
باز کردن فایل با open create-component.sh
et
به این فایل اضافه کنید:
#!/bin/bash
if [ $# -ne 2 ]; then
echo "Usage: create-component <ComponentName> <path>"
exit 1
fi
component_name="$1"
path="$2"
# Convert to PascalCase and camelCase
component_name_pascal="$(tr a-z A-Z <<<"${component_name:0:1}")${component_name:1}"
component_name_camel="$(tr A-Z a-z <<<"${component_name:0:1}")${component_name:1}"
# Create directory
component_dir="${path}/${component_name_pascal}"
mkdir -p "${component_dir}"
# Create ComponentName.tsx
tsx_file="${component_dir}/${component_name_pascal}.tsx"
cat > "${tsx_file}" <<- EOM
import styles from "./${component_name_camel}.module.scss"
type ${component_name_pascal}Props = {}
const ${component_name_pascal} = (props: ${component_name_pascal}Props) => {
const {} = props
return (<div className={styles.component}></div>)
}
export default ${component_name_pascal}
EOM
# Create componentName.module.scss
scss_file="${component_dir}/${component_name_camel}.module.scss"
cat > "${scss_file}" <<- EOM
.component {
}
EOM
echo "Component '${component_name_pascal}' created at '${component_dir}'"
3. فایل Save را ذخیره کنید
فایل را ذخیره کرده و قابل اجرا کنید:
chmod +x create-component.sh
سپس اسکریپت را به دایرکتوری در PATH خود منتقل کنید، به عنوان مثال، /usr/local/bin، تا بتوانید آن را از هر جایی اجرا کنید:
sudo mv create-component.sh /usr/local/bin/create-component
4. استفاده
اکنون می توانید از دستور create-component استفاده کنید [componentName] [path] برای ایجاد اجزای خود مثلا :
create-component BasedButton /path/to/components
این یک دایرکتوری BasedButton در مسیر مشخص شده به همراه فایل های BasedButton.tsx و basedButton.module.scss ایجاد می کند.
🎉
احتمالاً باید ترمینال خود را مجددا راه اندازی کنید.
زمانی که می خواهید یک کامپوننت ایجاد کنید Button
که در src/components/[ici]
، تنها کاری که باید انجام دهید این است که دستور را وارد کنید
create-component Button ./src/components/
هاپ! خودشه! 😎