単一のHTMLで動くEpisoPass
(2019/12/25)
データの編集とかHTML生成とかはJavaScriptで実行できるので基本的にサーバは不要なのだが、単一HTMLにしたりデータをダウンロード可能にしたりするのはいろいろ面倒であった。
webpackでJavaScriptファイルをひとつにまとめる
faviconなど画像データはBase64エンコードしてHTMLに埋め込む
HTMLソースを生成してダウンロード可能にするためにちょっと工夫する
データをDrag&Dropするためにちょっと工夫する
SPAっぽく動くようにするためにちょっと工夫する
また、サーバ上のデータをEpisoPass拡張機能から利用できないので、ブラウザのローカルDB(chrome.storage)にQ/Aデータを保存するようにした。今後はEpisoPass.comには完全にスタティックなファイルしか置かないようにするつもりである。 ソースはGitHubに置いてある。イマドキなフレームワークを使うべきなのかもしれないが、もともとjQueryでゴリゴリ書いてたものなのでそこは気にしないことにしたい。