An open API service indexing awesome lists of open source software.

https://github.com/vuejs/vue-jsx-vapor

Vapor Mode of Vue JSX
https://github.com/vuejs/vue-jsx-vapor

Last synced: about 2 months ago
JSON representation

Vapor Mode of Vue JSX

Awesome Lists containing this project

README

          

# vue-jsx-vapor

[![NPM version](https://img.shields.io/npm/v/vue-jsx-vapor?color=a1b858&label=)](https://www.npmjs.com/package/vue-jsx-vapor)

Vapor Mode of Vue JSX.

## Features

- ⚡️ High Performance: It has the same performance as Vue Vapor!
- ⚒️ Directives: Support all build-in directives of Vue.
- ✨ Macros: Support most macros of Vue, Friendly to JSX.
- 🌈 Hot Module Replacement: Support functional components or defined by defineComponent.
- 🦾 Type Safe: Provide Volar plugin support by install TS Macro (VSCode plugin).
- ⚙️ ESLint: Provide an ESLint plugin for vue-jsx-vapor to automatically format code.

## Installation

```bash
npm i vue-jsx-vapor
```

## Usage

- [📜 Documentation](https://jsx-vapor.netlify.app/)
- [🛰️ Playground](https://repl.zmjs.dev/vuejs/vue-jsx-vapor)

Vite

```ts
// vite.config.ts
import VueJsxVapor from 'vue-jsx-vapor/vite'

export default defineConfig({
plugins: [VueJsxVapor()],
})
```

Example: [`playground/`](./playground/)


Rollup

```ts
// rollup.config.js
import VueJsxVapor from 'vue-jsx-vapor/rollup'

export default {
plugins: [VueJsxVapor()],
}
```


Webpack

```ts
// webpack.config.js
module.exports = {
/* ... */
plugins: [require('vue-jsx-vapor/webpack')()],
}
```


Nuxt

```ts
// nuxt.config.js
export default defineNuxtConfig({
modules: ['vue-jsx-vapor/nuxt'],
})
```

> This module works for both Nuxt 2 and [Nuxt Vite](https://github.com/nuxt/vite)


Vue CLI

```ts
// vue.config.js
module.exports = {
configureWebpack: {
plugins: [require('vue-jsx-vapor/webpack')()],
},
}
```


esbuild

```ts
// esbuild.config.js
import { build } from 'esbuild'
import VueJsxVapor from 'vue-jsx-vapor/esbuild'

build({
plugins: [VueJsxVapor()],
})
```