Construir interfaces de usuario de React accesibles requiere aprender los patrones de shadcn/ui, la instalación de componentes y la personalización de Tailwind. Esta habilidad proporciona una guía integral para instalar componentes, implementar formularios con validación y crear patrones de interfaz accesibles como diálogos, menús desplegables y tablas.
下载技能 ZIP
在 Claude 中上传
前往 设置 → 功能 → 技能 → 上传技能
开启并开始使用
测试它
正在使用“shadcn-ui”。 ¿Cómo agrego el componente button?
预期结果:
- Para agregar el componente button a tu proyecto shadcn/ui:
- ```bash
- npx shadcn@latest add button
- ```
- Esto instala el componente button y sus dependencias.
- Uso básico:
- ```tsx
- import { Button } from "@/components/ui/button"
- export default function MyComponent() {
- return <Button>Haz clic en mí</Button>
- }
- ```
正在使用“shadcn-ui”。 Crear un formulario con validación de correo electrónico
预期结果:
- Aquí tienes un formulario simple con validación de correo electrónico usando React Hook Form y Zod:
- ```tsx
- import { useForm } from "react-hook-form"
- import { z } from "zod"
- import { zodResolver } from "@hookform/resolvers/zod"
- import { Form, FormControl, FormField, FormItem, FormLabel, FormMessage } from "@/components/ui/form"
- import { Input } from "@/components/ui/input"
- import { Button } from "@/components/ui/button"
- const formSchema = z.object({
- email: z.string().email({ message: "Dirección de correo inválida" }),
- })
- export function EmailForm() {
- const form = useForm({
- resolver: zodResolver(formSchema),
- defaultValues: { email: "" }
- })
- function onSubmit(values) {
- console.log(values)
- }
- return (
- <Form {...form}>
- <form onSubmit={form.handleSubmit(onSubmit)}>
- <FormField
- control={form.control}
- name="email"
- render={({ field }) => (
- <FormItem>
- <FormLabel>Correo</FormLabel>
- <FormControl><Input placeholder="tu@ejemplo.com" {...field} /></FormControl>
- <FormMessage />
- </FormItem>
- )}
- />
- <Button type="submit">Enviar</Button>
- </form>
- </Form>
- )
- }
- ```
安全审计
安全This is a pure documentation skill containing markdown files with shadcn/ui component library guidance. All 1163 static findings are FALSE POSITIVITIES caused by the scanner misinterpreting documentation patterns. The 'external_commands' detections are markdown code block delimiters and inline code references, not shell execution. The 'weak cryptographic algorithm' detections are Tailwind CSS HSL color values. Network and filesystem detections are example URLs and paths in documentation. This skill poses no security risk.
质量评分
你能构建什么
Configuración de nuevo proyecto
Inicializar un nuevo proyecto Next.js con shadcn/ui, configurar TypeScript, Tailwind CSS e instalar componentes esenciales como button, input y card.
Implementación de formularios
Construir formularios validados usando React Hook Form, validación de esquemas Zod y componentes de formulario shadcn/ui con accesibilidad adecuada.
Personalización de componentes
Personalizar el estilo de componentes shadcn/ui, crear temas de modo oscuro y extender componentes para requisitos de sistemas de diseño.
试试这些提示
Ayúdame a configurar un nuevo proyecto Next.js con shadcn/ui. Quiero usar TypeScript, Tailwind CSS e instalar los componentes button, input, form, card y dialog.
Crear un formulario de contacto usando React Hook Form, validación Zod y componentes shadcn/ui. Incluir mensajes de error adecuados y atributos de accesibilidad.
Muéstrame cómo implementar un diálogo modal usando el componente Dialog de shadcn/ui. Incluir gestión de estado abierto, manejadores de cierre y características de accesibilidad.
Construir un componente de tabla de datos usando la tabla shadcn/ui con características de ordenamiento, paginación y selección de filas. Incluir interfaces TypeScript para la estructura de datos.
最佳实践
- Usa la CLI de shadcn/ui para la instalación de componentes para garantizar la gestión adecuada de dependencias
- Aprovecha las primitivas de Radix UI para características de accesibilidad integradas como navegación por teclado y gestión de foco
- Personaliza componentes copiándolos a tu proyecto en lugar de depender de paquetes externos
- Usa React Hook Form con Zod para validación de formularios segura en cuanto a tipos
避免
- Evita modificar node_modules directamente en lugar de copiar componentes a tu proyecto
- No omitas la validación de formularios al recopilar entrada de usuarios
- Evita codificar estilos de componentes en lugar de usar utilidades de Tailwind CSS
- No ignores los requisitos de accesibilidad al personalizar componentes
常见问题
¿Cuál es la diferencia entre shadcn/ui y otras bibliotecas de componentes?
¿Cómo actualizo los componentes de shadcn/ui?
¿Puedo usar shadcn/ui con frameworks diferentes a Next.js?
¿Cómo agrego el tema de modo oscuro?
¿Qué biblioteca de validación funciona mejor con los formularios de shadcn/ui?
¿Cómo creo variantes personalizadas de los componentes shadcn/ui?
开发者详情
许可证
MIT
引用
main
文件结构