Open1

hono + pages + mermaid.js, ER図 描画

knaka Tech-Blogknaka Tech-Blog

概要

hono + react SSR , mermaid.js で、ER図 表示メモになります

  • mermaidがサポートする種類であれば、一通り表示できると思います
  • D1に、mermaid記法でデータ保存
  • フルスタック構成

[公開: 2023/11/25]


環境

  • hono: 3.9.0
  • mermaid.js
  • react-dom
  • cloudflare pages
  • cloudflare D1

作成したコード

https://github.com/kuc-arc-f/hono_vite_31app

  • 関連パス: /er_chart

  • er-chart 参考


  • gantt/ ガントチャート


表示: pages/er_chart/show/App.tsx

App.tsx

import Layout from '../../layout';
import React from 'react';

//
export default function Page(props: any) {
console.log("#taskShow");
//console.log(props.item);
    return (
    <Layout title="TaskShow">
        <div>
            <a href="/er_chart" className="btn-outline-purple ms-2 my-2">back</a>
            <hr className="my-4" />
            <h1 className="text-4xl font-bold">{props.item.title}</h1>
            <p>ID: {props.item.id}
            , {props.item.createdAt}
            </p>
            <hr className="my-2" />
            content:<br />
            <pre className="mermaid">{props.item.content}</pre>
            <hr className="my-8" />
            {/* TS */}
            {import.meta.env.PROD ? (
            <>
                <script type="module" src="/static/MermaidImport.js"></script>
            </>
            ) : (
            <>
                <script type="module" src="/src/client/MermaidImport.ts"></script>
            </>
            )}
        </div>
    </Layout>
    )
}
/*
*/