介绍
express 视图引擎 tsx 的实现 .
安装
npm install express-tsx typescript --save
使用示例
主文件
const express = require('express')
const server = express()
server.listen(9000,function(){ console.log(`server is running on ${this.address().port}`) })
server.engine('.tsx',require('express-tsx').render)
server.set('views',__dirname)
server.set('view engie','tsx')
server.use(require('express-tsx').middleware)
server.use('/',(req,res)=>res.render('./view.tsx'))
视图文件
import React = require('react')
console.log('express-tsx' as any)
export default ()=>
<div>
hello world
</div>
示例运行
实现流程
深入使用
示例1
替换 res.locals.express_tsx_html
函数来输入你自己的 html
结构来应对 seo
等情况
- 创建
html.js
- 在设置模板引擎的时候替换
express_tsx_html
函数, 相关代码片段:
源文件
const render2 = express()
render2.use((req,res,next)=>{
res.locals.express_tsx_html = require('./html').html
next()
})
render2.engine('.tsx',express_tsx.render)
render2.set('views',__dirname)
render2.set('view engine','tsx')
render2.use('/',(req,res)=>res.render(renderFile))