Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Converts JSX to HTML strings at compile time.

License

NotificationsYou must be signed in to change notification settings

unplugin/unplugin-jsx-string

npm versionnpm downloadsUnit Test

Converts JSX to HTML strings at compile time.

Installation

npm i unplugin-jsx-string
Vite
// vite.config.tsimportJsxStringfrom'unplugin-jsx-string/vite'exportdefaultdefineConfig({plugins:[JsxString()],})


Rollup
// rollup.config.jsimportJsxStringfrom'unplugin-jsx-string/rollup'exportdefault{plugins:[JsxString()],}


esbuild
// esbuild.config.jsimport{build}from'esbuild'build({plugins:[require('unplugin-jsx-string/esbuild')()],})


Webpack
// webpack.config.jsmodule.exports={/* ... */plugins:[require('unplugin-jsx-string/webpack')()],}


Vue CLI
// vue.config.jsmodule.exports={configureWebpack:{plugins:[require('unplugin-jsx-string/webpack')()],},}


TypeScript Support

// tsconfig.json{"compilerOptions": {// ..."types": ["unplugin-jsx-string"/* ...*/],  },}

Usage

// basic usagejsxToString(<div>Hello</div>)// "<div>Hello</div>"// raw expressionconstt=Date.now()jsxToString(<div>Now:{jsxRaw(Math.trunc(t/1000))}</div>)// `<div>Now: ${Math.trunc(t / 1000)}</div>`// class listjsxToString(<divclassName={['bar','foo']}/>)// `<div/>`// stylesjsxToString(<divstyle={{color:'red',textAlign:'center'}}/>)// `<div/>`// eventsjsxToString(<buttononClick={()=>'clicked'}></button>)// "<button></button>"// childrenjsxToString(<div><p>foo</p><p>bar</p><br/><div/>    123</div>,)// "<div><p>foo</p><p>bar</p><br/><div/>123</div>"

Benchmark

<div>Hello World</div> x 99,362 ops/sec ±0.55% (92 runs sampled)<div><img src={'foo'} /><div></div></div> x 66,281 ops/sec ±0.63% (95 runs sampled)
Tested on Apple M1 Max / 32GB

More samples are welcome.

Sponsors

License

MIT License © 2022-PRESENTKevin Deng

About

Converts JSX to HTML strings at compile time.

Topics

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Sponsor this project

 

Contributors2

  •  
  •  

[8]ページ先頭

©2009-2025 Movatter.jp