Open5

React動かしながらメモ

fscowardfscoward

typescript-eslint

npm ERR! ERESOLVE could not resolve

https://github.com/typescript-eslint/typescript-eslint/blob/master/docs/getting-started/linting/README.md

typescript-eslint を入れようとしたら
npm ERR! ERESOLVE could not resolve と出た。
--legacy-peer-deps を付ければ良さそう

npm v7 で peerDependencyの挙動変更 があったとのこと
https://blog.watilde.com/2020/10/14/npm-v7の主な変更点まとめ/

'module' is not defined no-undef`

npx eslint . --ext .js,.jsx,.ts,.tsx したら 1:1 error 'module' is not defined no-undef と出た

envにnode: trueが必要らしい

https://stackoverflow.com/questions/63478122/typescript-eslint-config-eslintrc-file-module-is-not-defined

fscowardfscoward

CSS

何がいいかなーと調べたら css modules?というのとcss in js?がありそう。
個人的にはcss modulesの方が好きだけど、色々みてるとcss in jsの方が勢いがありそうなので styled-components を使ってみる

fscowardfscoward

サーバーとの通信のライブラリは何がいいのか

標準で fetch があるらしい。
axios とか use-http とかのライブラリもあるようだが、ざっと眺めた感じ axios が情報多そうな感じで良さげ。

fscowardfscoward

状態管理

Akita 使おうかなーと思ったけど Elf もチェックするのをおすすめするよって書いてあったので Elf を使ってみる

Elf

npx @ngneat/elf-cli install と打つと package を選択せよと言われるがよくわからないのでとりあえず全選択しておく。(後で調べる)

package.json の差分としては以下の通り

    "@ngneat/effects": "^1.0.0-beta.3",
    "@ngneat/effects-hooks": "^1.0.0-beta.1",
    "@ngneat/effects-ng": "^1.0.0-beta.0",
    "@ngneat/elf": "^1.0.0-beta.5",
    "@ngneat/elf-cli-ng": "^1.0.0-beta.1",
    "@ngneat/elf-devtools": "^1.0.0-beta.4",
    "@ngneat/elf-entities": "^1.0.0-beta.10",
    "@ngneat/elf-pagination": "^1.0.0-beta.2",
    "@ngneat/elf-persist-state": "^1.0.0-beta.4",
    "@ngneat/elf-requests": "^1.0.0-beta.13",
    "@ngneat/elf-state-history": "^1.0.0-beta.2",
    "@ngneat/react-rxjs": "^1.0.0-beta.1",

だいたいドキュメント見れば動かせそうだし、ヨシ!