問題タブ [om]
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.
reactjs - 試薬から事前定義された反応コンポーネントを使用しますか?
反応コンポーネントを抽象化した外部 UI があり、それらを試薬から再利用したいのですが、clojurescript からデータを渡すだけで、定義済みの反応コンポーネントを直接レンダリングする方法はありますか? 私はclojurescriptの初心者です。
reactjs - ClojureScript+Sablono を使用してスタナイズされていない HTML をレンダリングする
(ClojureScript SPA の典型的な設計パターンに従って) グローバル アトムに保存されたデータセットがあり、データが安全であることを知っています (手動で入力しました。ページロード)。
ただし、引用符には などの基本的な HTML タグ<i>
や などの文字が含まれてい&mdash
ます。私はsablonoを使用して、次のように HTML でデータをレンダリングしています。
(:quote quote)
は文字列のベクトルで、各文字列は引用の段落です (したがって、:p
タグをその上にマップします)。
文字列を生のテキストではなく HTML としてレンダリングするように Sablono に指示するにはどうすればよいですか?
私が考えることができる唯一のことはsablono.core/html
、各文字列をマッピングすることですが、それを機能させることはできません。
clojure - 文字列を解析して Hiccup にするにはどうすればよいですか?
Hiccup の文字列を Hiccup ノードに解析するにはどうすればよいですか?
たとえば
"[:b 'hello world']"
、[:b "hello world"]
css - Om コンポーネントのスタイリング
スタイルと Om コンポーネントの方法は、React がスタイルを処理する方法に基づいています。アプリケーション全体で一般的な CSS ルールを複製するのは恐ろしい混乱になるので、関数などでスタイルを定義する方法はありますか?
defn
andを使用してみましdef
たが、回避する方法が見つかりません
Caused by: clojure.lang.ExceptionInfo: JavaScript literal must use map or vector notation
node.js - Node.js で ClojureScripts Om を実行するにはどうすればよいですか?
Node.js で Om を使用して HTML を生成できるかどうかを調べています。ClojureScript を Node.js で実行することができました。どうやらReact を Node.js で実行できるようです。基本ガイドに従って、次のようにLeiningenプロジェクトを作成します
次のように起動するように project.clj ファイルを変更しました
そしてcore.cljsをに変更しました
プロジェクトは、次のコマンドを使用して正常にコンパイルされます
しかし、Windowsのcmdシェルからそのように生成出力を実行しようとすると
私は得る
未定義の React オブジェクトは、生成された om_tut.js ファイルの 37532 行目に存在し、ロードされているはずの ...\om-tut\out\react.inc.js ファイルに由来すると思われます。
何がうまくいかないのかについてのアイデアはありますか?
clojurescript - Om DIV から DOM 要素を取得するにはどうすればよいですか?
私は Clojurescript Om を使用しており、コンポーネントに含まれる DIV の 1 つで (offsetTop を 0 に設定できるように) 基礎となる DOM 要素にアクセスする必要があります。この要素にアクセスするにはどうすればよいですか?
clojurescript - Om はどのようにリスト オブジェクトをレンダリングしますか?
以下の Om チュートリアル ページの例に示すように、リスト アイテムのレンダリングに om の使用がどのように適用されるかを理解するのに苦労しています。
私の理解する apply は、関数とアイテムのリストを取り、その関数をリストに適用するということです。しかし、この例では、その理解は への適用dom/ul
に変換されnil
ます。
私が理解していないことは次のとおりです。
- なぜ
dom/ul
リストに応募するのですか? 要素を作成したくないのですが、ul
要素を作成したいli
のですか? - この例で送信されたすべてのパラメーターを apply はどのように処理しますか?
asynchronous - Om + Figwheel + core.async でリロード可能な非同期コードを書くにはどうすればよいですか?
時計アプリのようなものを書きたいと思います。状態は基本的に、繰り返しインクリメントされる数値です。その方法の 1 つをここで見ることができます。
これがリロード可能なコードではないという問題があります。fig wheel を使用してコードを更新すると、状態を更新するものがいくつかあるため、インクリメントが速くなります。
さまざまなアイデア (基本的には、go ステートメント コードを所有するさまざまなコンポーネントを作成する) を試してみましたが、機能するものを思いつくことができませんでした。
誰かがこれに対するきちんとした解決策を持っていますか、それとも開発中にそれに固執する必要がありますか?
clojure - マクロを使用して Om コンポーネントを生成する
マクロを使用して一連の類似した Om コンポーネントを生成しようとしています (たとえば、共通のボイラープレートと動的な「ボディ」を含むモーダル要素)。
以下のソリューションがほとんど機能しています。owner
1 つの例外は、フォームのon-submit
イベント ハンドラーで適切なものにアクセスすることです。
モーダルは期待どおりにレンダリングされますが、フォームを送信するとエラーが表示されます:がスコープ内にないUncaught TypeError: Cannot read property 'getDOMNode' of undefined
ためと思われます。owner
(注: この要素とそのイベント ハンドラーは、完全に構築された場合、つまりマクロを使用しない場合に期待どおりに機能します。)
owner
マクロの本体で適切なものを利用できるようにするにはどうすればよいですか?
reactjs - トランザクションで状態を更新できません! オムで
om-cookbookのlocal-state の例では、update-state を使用してカウンターを更新できます。および set-state! ではありませんが、transact! ではそうではありません。
栗のテンプレートを使用してプロジェクトを初期化しました。
これらの作品
これは機能しません
IRenderState からの呼び出し