Qrac

Results 93 comments of Qrac

エンハンスプラグインで無茶苦茶編集すると最終的に何ができあがっているのかイメージしづらくなった。編集箇所を決めること、全体処理とコンポーネントの差し込みをメインにして、基本的な作業はコンポーネント側に渡す方が良さそう。全体リニューアルには向かない。

StoryAppにローディングアニメーションを追加する。 開発中にいちいち出るのが鬱陶しかったので削除していたが再実装予定(かなり弱めにする)。 NetlifyにアップしたプロトタイプはTTFBがかなり遅くて長いHTMLのロードに数秒時間がかかっている。パスの先が無くてエラーを起こしているのかロード中なのか不明でストレス。 すぐにロードできている場合は出さない。2〜3秒かかった場合にローディングを出すようにしてみる。 ~~同時にパスが見つかっていない場合の処理も追加する。現状だとindex.htmlが出てしまう。Appがindex.htmlのときにナビゲーションのパスを間違うとiframeが無限入れ子になってしまう。~~ 開発中の問題。本番では404ページを作っておけば解決。

minista-plugin-deliveryの機能は最近使ってないから一旦削除でいいかも。storyapp使って納品してる。ただ、実機スマホで見てもらうなどの用途の時にないと困る可能性はある。

minista-plugin-island babelのparse, traverse, generateを使ってIslandコンポーネント配下を検出しようとしたがesmでうまく動かず。 ``` traverse is not a function ``` ```js // defaultを使う形でも動かない? import traverse from "@babel/traverse" traverse.default(...) ```

#122 の画像生成キャッシュを導入する。

Partial Hydrationの動作するReactのバージョンを18以上に変更した。 - バージョン検出の実装コードが長い - 検出が確実とは言えない - テストしづらい - 業務で18未満を使うシーンがなくなった

Partial HydrationのusePreactオプションを削除した。 - プラグインの影響範囲を超えて他のJavaScriptのビルドにも影響するため - 依存関係を減らしたい 今後は手動でpreact-compatをビルド全体に対して設定することにする。これによりプラグインの影響範囲を超えることを認識する。

MPAプラグインは使わなそうなので予定から一旦削除。

vituumを参考にSSGプラグインを新しい方法で作ってみたが、coreのHTMLプラグインの挙動をいじれない部分があり破棄。 このプラグインではHTMLファイルを実際に生成してViteのinputに渡す。既存のemitFileで生成結果を差し込む場合と異なり、srcやhrefでルートパスを書いたアセットを簡単にバンドルできる。 ただし、エントリーのスクリプトに不要な内容が含まれたり、エントリーしたCSSの名前やタグの順番が変わったりと実務に向かなかった。 ```ts import type { Plugin, UserConfig } from "vite" import fs from "node:fs" import path from "node:path" import fg from "fast-glob" import type { SsgPage } from...

plugin-bundleとplugin-entryのHTML処理が重複するためplugin-bundleに統合する。画像のsrcエントリーにも対応。plugin-ssgに含まれる画像の相対パスに関する修正もplugin-bundleに移動する。 - テンプレートのルートパスから CSS・JS・画像をエントリー - テンプレートでインポートした CSS を結合して出力 - テンプレートでインポートした画像を出力