問題タブ [isomorphic]
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.
css - SmartGWT が CSS をオーバーライドするのはなぜですか?
SmartGWT (エンタープライズ) でボタン付きのウィジェットを開発することを任されています。このデザインでは、ボタンの周りにボーダーが必要です。このための CSS を設計しました。ただし、SmartGWT は、生成された TD の「スタイル」属性を埋めることによって、CSS 境界定義をオーバーライドすることを主張します。Canvas.setBorder のドキュメントには、実際には「このプロパティは、このコンポーネントの 4 つの側面すべてに同じ境界線を適用します。側面ごとに異なる境界線を CSS スタイルで設定し、styleName を介して適用できます。」明らかに、CSS で境界線の定義を制御できるようにするためのものです。
具体的な境界線の定義で setBorder を呼び出すだけでよいことに気付きましたが、状態 (ホバー、ダウンなど) に基づいて異なる境界線を設定する必要があります。
たとえば、ボタンのラベルは「レビュー」です。生成された HTML は次のとおりです。
私の CSS では、境界線で定義されたクラス (controlButton) がありますが、「スタイル」の明示的な境界線宣言がそれをオーバーライドします。
ボタンを作成するコードは次のとおりです。
また、setBorder を呼び出さずに setBorder(null) を呼び出し、上記のように setBorder(“inherit”) も試しました。インライン スタイルには何も影響しません。
CSS は次のとおりです (簡潔にするためにすべての状態定義を省略しています)。
ブラウザーのプログラミング モードでは、「インライン スタイル」の境界線定義を手動でオフにすることができ、ボタンはクラス CSS を使用して正しく表示されます。
ところで、CSS で !important 修飾子を使用できることはわかっていますが、それなしで SmartGWT がオーバーライドを停止するようにする方法が必要です。
SmartGWT のバージョンは 4.0.5 です。GWT のバージョンは 2.7.0 です。
reactjs - 「同型React」とはどういう意味ですか?
私は React のチュートリアルを行っていましたが、Web 上で同形の React について多くのことを見ました。それが何であるか、そしてそれがどのように機能するかについて混乱しているだけです。
私の理解では、「同型React」はアプリケーションであり、起動時に必要なすべてのデータをロードし、ユーザーの要求に従ってクライアント側でレンダリングを続け、完全なデータをストアに保持します(Reduxアーキテクチャ)。
ここで、サードパーティのアプリケーションから Web サービスを使用して完全な HTML フォームをロードし、そこからデータを json (画面にレンダリングする必要があるフィールドのスキーマ)としてロードする必要があるようなシナリオがある場合はどうでしょうか。次の画面としてロードする他のスキーマを取得できるように、リクエストを送り返す必要があります。
このシナリオでは、サーバー呼び出しまたは ajax 呼び出し (API を公開する可能性があるため、やりたくない) を行う必要があるたびに、同形をどのように使用すればよいでしょうか。
この場合、このアプリケーションは同形であると言えますか、それとも同形に関する私の理解は完全に間違っていますか?
javascript - 同形 npm パッケージの依存関係
ブラウザのAngularアプリケーションとコンソールnode.jsツールの両方で使用される同形のnpmパッケージを構築したいと考えています。パッケージは、私がフェッチ API を使用するいくつかの http 要求を実行します。私は通常、ブラウザーとノードで同じフェッチ メソッドを持つように、プロジェクトの依存関係にisomorphic-fetchとes6-promise pollyfill を追加します。そのパッケージは、Promise オブジェクトを追加し、関数が存在しない場合はグローバルにフェッチします。
しかし、他の誰かが使用できる共有パッケージの場合、そのような依存関係を追加することは良い考えですか? 他の人はすでに別の Promise または fetch 実装を使用している可能性があります (たとえば、ノードの「promise」パッケージ)。私のパッケージが Promise オブジェクトと fetch メソッドに依存していることを README で人々に警告し、好ましい実装を選択させる方がよいのではないでしょうか?