介绍
这是 express 中 jsx 模板渲染的一个实现 .
安装
npm install express-tsx chokidar
chokidar
是开发依赖 , 生产环境不会安装
使用
app 主文件
import Express = require('express')
export const app = Express()
import { render,requirejsConfig,defaultOptions,middleware } from "expres-tsx";
app.use(middleware)
requirejsConfig({
baseUrl :'https://unpkg.com/',
paths:{
'requirejs' :'requirejs@2.3.3/require',
'react' :'react@15.5.4/dist/react.min',
'react-dom' :'react-dom@15.5.4/dist/react-dom.min',
'glamor' :'glamor@2.20.25/umd/index.min',
'glamorous' :'glamorous@3.22.1/dist/glamorous.umd.min',
},
})
app.engine('.tsx',render({
}))
defaultOptions.placeholder = 'loading'
app.set('views',__dirname+'/views')
app.set('view engine','tsx')
app.get('/',(req,res)=>res.render('ssrRender',{ who:'express-tsx', title:'express-tsx' }))
tsx 视图文件
export default (props)=>
<div onClick={ ()=>alert(props.who) }>
hello {props.who}
</div>
优化
- https push
如果你使用
spdy
的话 , 将会预推送文件到客户端 , 加快加载
示例运行