React と React Native のスレ (481レス)
React と React Native のスレ http://mevius.5ch.net/test/read.cgi/tech/1552134567/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
76: デフォルトの名無しさん [] 2021/02/14(日) 13:32:40.22 ID:wyKYn9A/ >>75 分かんない人だな。 なんで今のclassベースの実装をこの話に持ち込むの。 hookの機能を”function”でなく、jsの”class”で実現できないの?っていう疑問なの。 http://mevius.5ch.net/test/read.cgi/tech/1552134567/76
77: デフォルトの名無しさん [sage] 2021/02/14(日) 14:00:51.86 ID:+4ZWExbH お前もわからずやだな useStateだろうがuseEffectだろうがuseCallbackだろうがuseRefだろうがclassコンポーネントはhookなしで同じことが実現できてるだろ http://mevius.5ch.net/test/read.cgi/tech/1552134567/77
78: デフォルトの名無しさん [sage] 2021/02/14(日) 14:19:02.14 ID:wyKYn9A/ hookを知らないやつだったか。アホらし。 http://mevius.5ch.net/test/read.cgi/tech/1552134567/78
79: デフォルトの名無しさん [sage] 2021/02/14(日) 14:34:40.65 ID:kA8DCabn 時系列的には クラスコンポーネント: 状態を扱える ↓ "ステートレス"関数コンポーネント: 状態を扱えない ↓ 関数コンポーネント+hooks: 状態を扱える と発展してきた つまりhooksはクラスコンポーネントができていたことを関数コンポーネントでもできるようにするために後から追加されたもの ただし クラスコンポーネント: 状態をコンポーネントが管理する 関数コンポーネント+hooks: 状態をフレームワークが管理する という違いがある これが今後のconcurrent modeやserver componentsで大きな違いになってくる フレームワークができることを増やすにはコンポーネント側の自由度は低い方がよくてそれがpureな関数コンポーネント http://mevius.5ch.net/test/read.cgi/tech/1552134567/79
80: デフォルトの名無しさん [sage] 2021/02/14(日) 14:46:29.94 ID:wyKYn9A/ >>79 この解説から見ると、自分の疑問は "状態をフレームワークが管理する" にはclass実装では不利なのか?向かないのか? って事になる。ね。 http://mevius.5ch.net/test/read.cgi/tech/1552134567/80
81: デフォルトの名無しさん [sage] 2021/02/14(日) 15:15:15.08 ID:kA8DCabn クラスコンポーネントのインスタンスはthis.〜で自由に状態を扱えてしまうからフレームワークには都合が悪い そこをthis禁止のように縛っていくとただの関数でいいやってなる http://mevius.5ch.net/test/read.cgi/tech/1552134567/81
82: デフォルトの名無しさん [sage] 2021/02/14(日) 16:39:29.19 ID:DVWK/pJu useCallbackみたいな単なるラッパー関数がclassにも欲しいってこと? なんかそう言うパッケージ見たことあるぞ http://mevius.5ch.net/test/read.cgi/tech/1552134567/82
83: デフォルトの名無しさん [sage] 2021/02/14(日) 16:59:03.97 ID:FekQTk3J classコンポーネントにuseCallbackはいらんやろ 前はbindしたり面倒だったけどstage3のclass fields使えばこれだけ class Foo extends React.Component { handleClick = (ev) => {...} http://mevius.5ch.net/test/read.cgi/tech/1552134567/83
84: デフォルトの名無しさん [sage] 2021/02/14(日) 21:01:15.04 ID:K2VDjDyL Ruby on Rails では、控えめなJS フレームワークのStimulu もある 規約で、HTML のdata-controller 属性で、JSファイル名・コントローラーが決まるので、 そこにイベント処理を書くだけ DOM・コントローラーは、多対多 1つのDOMは、複数のコントローラーで処理できる。 HTML内で、同じコントローラーを複数定義できる Stimuluは、this を使う。 同じコントローラーを複数定義したら、別のインスタンスを作る <li data-controller="a">1</li> <li data-controller="a">2</li> http://mevius.5ch.net/test/read.cgi/tech/1552134567/84
85: デフォルトの名無しさん [sage] 2021/02/14(日) 21:03:03.46 ID:NOmukaW1 ス・レ・チ http://mevius.5ch.net/test/read.cgi/tech/1552134567/85
86: デフォルトの名無しさん [sage] 2021/02/15(月) 02:51:04.90 ID:E7fw/gtI マジで障害者かな? この板に巣食ってる人がいるのは認識してたけど http://mevius.5ch.net/test/read.cgi/tech/1552134567/86
87: デフォルトの名無しさん [] 2021/06/18(金) 09:52:07.92 ID:IQL7BQ/N React Hooks + Reduxの利点を述べた記事をいくつか読んだのですが、 MVCでだめな理由がよくわかりませんでした。 複数のModelがReduxのStoreに一本化される: Modelをシングルトンにして、 Storeの内部で区分するところをModelのメンバとして区分する。 ViewからはActionを発行してReducerを通さないとStoreを更新できない: ViewはControllerに登録されたメソッドを通してしかModelを更新できない。 Storeの更新はViewに自動的に反映される。 Model(とそのメンバ、孫メンバ)がObservableであれば、Modelの更新を 自動的にViewに反映させることができる。 ではだめなんでしょうか。 http://mevius.5ch.net/test/read.cgi/tech/1552134567/87
88: デフォルトの名無しさん [] 2021/08/10(火) 10:10:26.07 ID:0SSgF6Zh Reactで関数コンポーネントで本気実装始めたんだが、 関数コンポーネント面倒くさ過ぎじゃね? 関数コンポネント入門位の実装なら問題なかったんだが、 ちょっと込み入ったの実装しようと思ったら クラスじゃないんで、コンポーネントの自前メソッドを(子から親、親から子)公開するのとか そのTS型定義をどうするのとかうまく解決できんのか?これwww http://mevius.5ch.net/test/read.cgi/tech/1552134567/88
89: デフォルトの名無しさん [sage] 2021/08/10(火) 10:18:58.12 ID:Yti8n+JL 込み入った実装ってだいたい設計から間違ってるよね… http://mevius.5ch.net/test/read.cgi/tech/1552134567/89
90: デフォルトの名無しさん [] 2021/08/10(火) 10:22:58.46 ID:0SSgF6Zh >>89 あんたが考えてんの具体的にどのレベルだ? こっちはネイティブアプリ同等の、ガントチャート状のスケジューラーの実装なんだが コンポーネント間のメソッド呼び出しは結構多いぞ http://mevius.5ch.net/test/read.cgi/tech/1552134567/90
91: デフォルトの名無しさん [sage] 2021/08/10(火) 11:17:59.39 ID:x9cqqxVb 奇遇だな、Webとネイティブ両用のスケジュール管理系やってるよ 推測だけどコンポーネントとデータ構造(いわゆるモデル)が分離できてないんだろうと思うわ 同じものをネイティブでも作ることを仮定して共有できるところ(モデル)とできないところ(レンダリング)にわけて考えてみるといんじゃね http://mevius.5ch.net/test/read.cgi/tech/1552134567/91
92: デフォルトの名無しさん [] 2021/08/10(火) 11:27:05.53 ID:0SSgF6Zh >>91 !! まだReact不慣れで困ってる 半年前にReact初めてそちはクラスベース(TS)だったので、 実装できない事は無かったのでこういった苦労はなかった >>コンポーネントとデータ構造(いわゆるモデル)が分離できてないんだろうと思うわ どうだろう? あんまり業務的なことを書くわけにはいかんけど、 親パネル側から、配置されたコンポーネントの機能を呼び出したいんだが、 コンポーネントが今回クラスから関数に変わったんで、 コンポーネント側にコンポーネント固有の機能(クラスん時はメソッド)が実装しずらくなって困ってる 関数コンポーネントだとここにメソッドとか置かないもんなの? http://mevius.5ch.net/test/read.cgi/tech/1552134567/92
93: デフォルトの名無しさん [] 2021/08/10(火) 12:03:49.33 ID:0SSgF6Zh 関数なんだから、オブジェクト指向的な実装はムリなんだろうな とりあえず、 ・クラス → モジュール ・プロパティ → モジュールの関数の引数 ・メソッド → モジュールの関数 に置き換えて実装してみるわ http://mevius.5ch.net/test/read.cgi/tech/1552134567/93
94: デフォルトの名無しさん [sage] 2021/08/10(火) 12:28:03.76 ID:dmkhwQTT 関数であれクラスであれ(つかもっと前から)Reactのコンポーネントは渡されたデータ(Props)をただベタッとレンダリングするだけってのがコンセプト その超基本的なところをわかってなさそう 他の言語やフレームーワークの考え方のままReact始めたのか知らんけどそれをReactに置き換えるよりReact流の考え方を身につけたほうがいいと思うわ http://mevius.5ch.net/test/read.cgi/tech/1552134567/94
95: デフォルトの名無しさん [] 2021/08/10(火) 12:36:48.42 ID:0SSgF6Zh いや、アトミックデザイン的に機能分割して その単位をオブジェクト指向的にデザインしてたわー−(前回プロジェクト) でもRender()しかやらん関数と、 その外にはみ出た処理で細切れ関数だらけになって、 コード読みにくいは、実装も美しくならんわー− ( ノД`)ドスル http://mevius.5ch.net/test/read.cgi/tech/1552134567/95
96: デフォルトの名無しさん [] 2021/08/10(火) 14:00:37.21 ID:8kvO2lBn Redux素晴らしいって言ってた人たちは今息してんのかな http://mevius.5ch.net/test/read.cgi/tech/1552134567/96
97: デフォルトの名無しさん [] 2021/08/10(火) 14:08:07.90 ID:UtkECLI3 >>95 この流れでアトミックデザインを出してくるのものすっごく薄っぺらい http://mevius.5ch.net/test/read.cgi/tech/1552134567/97
98: デフォルトの名無しさん [sage] 2021/08/10(火) 14:15:30.49 ID:i+IrTlV6 >>97 アトミックデザイン使わず あなたが表現してあげたら? http://mevius.5ch.net/test/read.cgi/tech/1552134567/98
99: デフォルトの名無しさん [] 2021/08/10(火) 14:57:48.57 ID:UtkECLI3 >>98 単純にいらんやろ 「コンポーネントをオブジェクト指向でデザインしてた」で十分だしそれがReactらしくないって話やん http://mevius.5ch.net/test/read.cgi/tech/1552134567/99
100: デフォルトの名無しさん [sage] 2021/08/10(火) 15:49:45.99 ID:LAvum0nL >>99 コンポーネントの分割単位が伝わらんよ http://mevius.5ch.net/test/read.cgi/tech/1552134567/100
101: デフォルトの名無しさん [] 2021/08/10(火) 16:58:18.35 ID:UtkECLI3 >>100 この流れで分割単位の話なんかいらないじゃん 88から読み直してみ http://mevius.5ch.net/test/read.cgi/tech/1552134567/101
102: デフォルトの名無しさん [sage] 2021/08/10(火) 18:51:43.55 ID:M/It2Akn > コンポーネント間のメソッド呼び出し ?????????? http://mevius.5ch.net/test/read.cgi/tech/1552134567/102
103: デフォルトの名無しさん [sage] 2021/08/10(火) 19:15:22.44 ID:Yh+H2qBA データフェッチに swr を使う前提であれば Recoil より swr で状態管理 hooks 作る方が良いんだろうか 両方使う例があるなら見てみたい http://mevius.5ch.net/test/read.cgi/tech/1552134567/103
104: デフォルトの名無しさん [sage] 2021/08/10(火) 19:38:32.34 ID:Qo7qEUjv >>103 swrはサーバーサイドの情報を取ってきてキャッシュするものだから扱う状態はサーバーステートとでも呼ぶべきものなんだよね だからクライアントサイド固有の状態を swrで扱おうとは俺は思わない apolloなんかはクライアントのステートも一緒に扱えるのを売りにしてるけど余計な手間をかけてるだけにしか見えない コンポーネントのローカルステート→useState, useReducer クライアントのグローバルステート→redux, recoilなど(俺は好かんがcontextもここに入る) サーバーステート→swr, react query, apolloなど と使い分けてる http://mevius.5ch.net/test/read.cgi/tech/1552134567/104
105: デフォルトの名無しさん [sage] 2021/08/10(火) 20:04:49.62 ID:Yh+H2qBA >>104 参考になるありがとう 依存ライブラリ増加を嫌うことへの妥協案で >>103 を考えてたけどその方が役割分担が明確だから状態と取得キャッシュが混合するより状態を把握しやすそう http://mevius.5ch.net/test/read.cgi/tech/1552134567/105
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 376 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.012s