create-frourio-app
create-frourio-app copied to clipboard
feat: svelte-kit 対応
やっていきます。
npm init svelte@next
- [ ] svelte-kit 単体の frourio サンプル
- [ ] テンプレートへの移行
バージョンは 1.0.0
までは next ではなく1.0.0-next.34
のように固定する方針でやっていきたい。
リンク
- https://www.npmjs.com/package/@sveltejs/kit
- https://www.npmjs.com/package/@sveltejs/adapter-node
- https://www.npmjs.com/package/@sveltejs/snowpack-config
svelte-kit についてなんですが、ちょっと現段階ではとりあえず動くものというのもなかなか難しそうな気がします…
svelte-kit の仕組み
npx snowpack dev
と npx svelte-kit dev
でだいぶ違う。現状 private に開発されているので実験とビルドされたものに対してデバッグでわかったことは、snowpack を裏で動かして、手前側で svelte-kit 独自のサーバーを動かして、import 解決をsvelte-kit 側で独自にやる、という感じです。
問題点
シンプルにバグがあると思います。svelte-kit に。それに対し issue も PR もできないのでなおさら厳しいかもです。まあ、開発中なので仕方ないですね…。
- svelte ファイルから相対パスでないモジュールを読み込むところなど。 npm パッケージを読み込むこと全般がうまくいかない。
- サーバー側での問題を無理やりクリアさせてみたがそれでもクライアント側でうまくいかず厳しい…
たとえば snowpack 自体には以下のように
モジュールを相対パスにする機能があるのですが、svelte-kit だと
のように変換してくれなくてうまく行かないなど…
現状を見ていると、将来、v1までには大きく舵を切るんじゃないかと思っています。 (snowpack の機能をもっと活用する、文字列置換ベースでなくする、など)。
ありがとう、このレポート非常に面白い! 貴重な知見をここだけに書き残しておくのはもったいないな・・・ とりあえず安定版が公開されるまではペンディングだね