vuejs-ai/vue-jsx-best-practices

Syntaxe JSX dans Vue (par exemple, class vs className, configuration du plugin JSX).

Qu'est-ce que vue-jsx-best-practices ?

Cette compétence fournit des bonnes pratiques pour l'utilisation de la syntaxe JSX dans Vue.js, en couvrant les différences clés comme `class` vs `className`, ainsi que la configuration du plugin JSX. Elle est conçue pour les développeurs travaillant avec Vue 3 et `@vitejs/plugin-vue-jsx`. La compétence explique comment configurer le plugin, utiliser des directives Vue dans JSX, et gérer les attributs spécifiques. Elle est utile pour éviter les erreurs courantes, améliorer la lisibilité du code, et tirer parti de la flexibilité de JSX avec la réactivité de Vue.

Compatible avec~Claude Code~Codex CLI~Cursor
Part ofReact
npx skills add https://github.com/vuejs-ai/skills/tree/main/skills/vue-jsx-best-practices

Installed? Explore more Développement et programmation skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Demander à votre IA préférée

Ouvre une nouvelle conversation avec cette compétence d'agent déjà préchargée.

Documentation

Que fait vue-jsx-best-practices ?

Syntaxe JSX dans Vue (par exemple, class vs className, configuration du plugin JSX).

Configuration

Pour utiliser JSX dans Vue 3, installez et configurez le plugin @vitejs/plugin-vue-jsx dans votre fichier vite.config.ts :

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import vueJsx from '@vitejs/plugin-vue-jsx'

export default defineConfig({
  plugins: [vue(), vueJsx()],
})

Syntaxe JSX de base

Dans JSX avec Vue, utilisez class au lieu de className :

// Correct (Vue)
<div class="my-class">Contenu</div>

// Incorrect (React)
<div className="my-class">Contenu</div>

Directives Vue dans JSX

Utilisez v-show, v-if, v-for et autres directives comme attributs JSX :

<template>
  <div v-if="condition">Condition vraie</div>
  <ul>
    <li v-for="item in items" :key="item.id">{ item.text }</li>
  </ul>
</template>

Événements

Les événements sont liés avec on suivi du nom de l'événement en camelCase :

<button onClick={() => handleClick()}>Cliquez-moi</button>

Liaison d'attributs dynamiques

Utilisez des accolades simples pour lier des attributs dynamiques :

<img src={ imageUrl } alt="Image dynamique" />

Composants

Les composants s'utilisent comme en React :

import MonComposant from './MonComposant.vue'

<MonComposant prop="valeur" />

Individual skills in this repo

This repo contains 5 individual skills — each has its own dedicated page.

Skills associés