zbysir / gojsx

Render Jsx / Tsx / MD / MDX by Golang

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gojsx

Render Jsx / Tsx / MD / MDX by Golang.

使用 Go 渲染 Jsx、Tsx、MD、MDX。

Features:

  • Pure Golang, fast and simple

Example

TSX

import App from "./App";

export default function Index(props) {
  return <html lang="en">
  <head>
    <meta charSet="UTF-8"/>
    <title>Title</title>
    <link href="https://unpkg.com/tailwindcss@^2/dist/tailwind.min.css" rel="stylesheet"/>
  </head>
  <body>
  <App {...props}></App>
  </body>
  </html>
}

Mdx

---
title: "Hi"
---

import Footer from "./footer.md"

# {meta.title}

<Footer/>

Render File

Then use gojsx to render .tsx or .mdx file.

package jsx

func TestJsx(t *testing.T) {
	j, err := gojsx.NewJsx(gojsx.Option{})
	if err != nil {
		t.Fatal(err)
	}

	s, err := j.Render("./test/Index.jsx", map[string]interface{}{"li": []int64{1, 2, 3, 4}})
	if err != nil {
		t.Fatal(err)
	}

	t.Logf("%+v", s)
}

Dependents

About

Render Jsx / Tsx / MD / MDX by Golang


Languages

Language:Go 91.6%Language:CSS 3.5%Language:TypeScript 3.2%Language:JavaScript 1.6%Language:MDX 0.1%Language:Shell 0.0%