問題タブ [rescript]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
json - 配列である Js.Json.t をどのように反復/マップできますか?
タイプを持つJSON配列をデコードしようとしていますJs.Json.t(array(Js.Json.t)明らかにそうではありません)。を呼び出すとJs.log(jsonList)、それが配列であることがわかりますが、配列内の要素をマップしてデコードする方法がわかりません。
これまでのところ、私は持っています:
コンパイラはカリー化されていない関数を期待していますが、それを提供する方法がわかりません。
編集
もっと近づいたと思いたいのですがThis has type: array(unit) Somewhere wanted: unit、オンラインになっています(下)value |> Array.map(Js.log)
reason - 大文字のコンポーネントを再作成
Rescript Documentationから、スプレッドを使用して既存のリストをコンポーネントに渡すことができることが示唆されています。MyComponentバニラReactの関数で実行できるコンポーネントを初期化する方法が見つからないため、Rescriptの正確な内容がわかりません。
どこmyChild = list{child1,child2}
何度か試みた後、以下は機能しません。
@JSX div(~children=myChild)、Rescript は次のようにリストにラップするように要求するためです。list{myChild}@JSX div(~children=list{myChild})、型エラーを与える- MyComponent という名前のモジュールを初期化して do を実行します
<MyComponent> ...myChild </MyComponent>が、これによりエラーが発生しますThe value make can't be found in MyComponent - 大文字化エスケープを使用して関数を初期化します:
let \"MyComponent" = () => ...、しかし、これによりエラーが発生しますThe module or file MyComponent can't be found.
私が気に入っているのは、 のMyComponentような大文字のタグとして使用できるコンポーネントの初期化の例です<MyComponent>...myChild</MyComponent>。前もって感謝します。
ocaml - ReScript の無限リスト / ストリーム
ReScript の無限リストの正しい型付けが見つからないようです。
私が最初に試した:
ReScript は型が周期的であると考えていたため、これは正しくありませんでした。だから代わりに私は試しました:
それでも型エラーが発生しました。
最終的に、このコードを機能させようとしていますが、型シグネチャが無限であるため失敗します。
javascript - 突然変異なしで関数ごとに効率的なグループを作成する方法は?
突然変異なしで関数ごとにグループを効率的に実装する方法はありますか?
単純な実装:
- ReScriptプレイグラウンド
- JavaScript (下記参照)
議論のために、これをより一般的にする必要はありません。私が直面している問題は、3 回ループしていることです。
Array.prototype.reduceループオーバーする必要がある1回messagesArray.prototype.some結果の配列に日付キーが既に存在するかどうかを確認するために一度- 日付キーが既に存在する場合は、再度ループして
Array.prototype.map配列の特定の要素を更新します - それ以外の場合は、新しい要素を含む新しい配列が返されます
ReScript でこれを効率的にする良い方法が本当にない場合は、この関数に生の JavaScript をいつでも使用できますが、これを突然変異なしで効率的に行うことができるかどうかに興味があります。
module - ReScriptで短いローカルオープンを書く方法は?
これは ReasonML でコンパイルされます。
ReScriptではありません:
公式ドキュメントで削除についての言及は見つかりませんでした。私はそれを逃しましたか?構文が変更されましたか、それとも削除されてドキュメントに記載されていませんか?