問題タブ [property-binding]

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.

0 投票する
1 に答える
424 参照

ember.js - Ember Controllerは、それ自体のプロパティの変更されたイベントにバインドできますか?

次のようなコントローラーを指定します。

これはうまくいかないようですので、オブザーバーがどのように機能するかを理解してはいけません。controller.authenticatedにオブザーバーを作成することになっていると思います。ただし、電話をかけると@set("authenticated", true)何も記録されません。

更新:無駄に置き換えcontroller.authenticatedてみました。App.signInController.authenticated

私は何が欠けていますか?

0 投票する
1 に答える
138 参照

c# - UserControlでプロパティを使用する

ユーザーコントロールを作成し、次のような新しいプロパティを追加しました。

私の質問は次のとおりです。カスタムコントロールのXAMLにある場合、どのように使用できますか?

0 投票する
2 に答える
303 参照

c++ - プロパティ バインドによるバグの発生、挿入時のオブジェクト位置の破損

オブジェクトのツリーを作成します。ツリーは非常に単純なロジックを使用して描画されます。

  • 各オブジェクトは、それ自体の表現とその子 (およびその子など...) の表現と同じ大きさです。
  • オブジェクトがその親の最初の子である場合、視覚的表現の下にインデントされて描画されます
  • 次のすべてのオブジェクトは、前の兄弟の下に直接描画されます

ただし、この単純なアルゴリズムは、新しいオブジェクトを挿入するときに失敗する場合があります。例えば:

ここに画像の説明を入力

この場合、ノード 1 と 2 はノード 0 に正常に挿入され、ノード 0 の全高 (各ノードの左側にある黒い線) は、それ自身の UI とその両方の子の合計になります。

しかし、ノード 3 がノード 1 に挿入されると、レイアウトが壊れます。ノード 2 は押し下げられません。その結果、新しく挿入されたノードと重なり、黒い線が見えなくなります。

追加の更新サイクルがトリガーされると、ツリーは通常に戻るため、グリッチは一時的な「または同期」プロパティが原因である必要があります。追加の 1 回の更新で常にツリーが整頓されるとは限らないことに注意してください。挿入が行われる場所によっては、バグが整列を妨げないように「カスケード アウト」するために数回の更新サイクルが必要になる場合があります。

この不規則な動作の原因および/またはそれを修正する方法はありますか? コードがときどき壊れる原因は何ですか? また、最終的には機能するのに、正常に機能するために 1 回から複数回の更新が必要になるのはなぜですか?

編集:私は、そのレベルの最後のノードで終わっていないノードに挿入するときに、位置合わせがいつ壊れるかを特定して特定することができました。すべてのバインディングは、新しいノードが最後に「開いている」ノードに挿入されている限り、適切に伝播されます。たとえば、そのレベルには次のノードはありませんが、前のノードに挿入するとバインディングが壊れます。そのため、影響を受けるすべてのレベルでバグを段階的に排除するには、追加の更新サイクルが必要です。しかし、何が原因で、どのように修正するかはまだわかりません。発生した場合のみです。

編集: もう少し調査すると、新しい子が親アイテムに挿入され、その子が順序に基づいて再配置された後、childrenRect親のプロパティはサイズの変更をすぐには反映しないようです。したがって、挿入されたオブジェクトの次の兄弟が配置されているとき、オブジェクトの高さには古い古い値が引き続き使用されますが、これは使用されないため、新しく挿入されたオブジェクトには影響しません。したがって、次の大きな問題は、アルゴリズムが適切なデータで期待どおりに機能するように、バインドが適切に行われるように修正する方法だと思いますか? タイマーを使用して操作を遅らせてみましたが、時間の問題ではなく、論理的な順序、たとえば、バグが発生した部門に等しいバグを排除するために現在必要な更新の数についてのようです。

編集:「解決する」方法を考えましたが...実際には、原因と回避方法はまだわかりませんが、修正されるまでツリー全体を更新するよりも少し「経済的な」解決策です親を下って、ルートに到達するまで現在のブランチのみを更新します。これにより多くの節約ができますが、少なくとも IMO ではバインディングが機能するはずなので、正しい値をすぐに取得することをお勧めします。

編集:注文コードは次のとおりです。

QML の設定方法の例:

0 投票する
1 に答える
1920 参照

scope - QML スコープ: 子オブジェクトのプロパティ バインディングが失敗する

私は QML を初めて使用し、ボタンのチュートリアルを行っているときにスコープの問題に遭遇しました。私はそれを解決しましたが、そもそもコードが機能しなかった理由がわかりません:

問題

次のコードは、ボタンをホバーしたときにランタイム参照エラーを発生させます。

main_broken.qml

エラー:

解決

次のように、プロパティ バインディングとシグナル スロットをアプリケーション ウィンドウ オブジェクトに移動するだけで解決されます。

main_fixed.qml

質問

ApplicationWindow オブジェクトの子 Rectangle 内にプロパティ バインディングを残すことができないのはなぜですか?

四角形専用のプロパティ (色など) が必要で、ApplicationWindow のプロパティの一部 (テキスト サイズなど) を使用する場合はどうすればよいでしょうか?


私はコーディングとスタック オーバーフローが初めてです (これが私の最初の投稿です)。可能な限り明確な方法で質問をしようとしましたが、スタック オーバーフローの基準に達していない場合と、それを変更するために何をしなければならないかを教えてください。

0 投票する
1 に答える
1594 参照

c# - コントロールのプロパティを同じフォームの別のコントロールのプロパティ値にバインドする

私は C# 4.5 - Winform で作業しています。私の質問は C# WinForm に固有のものです。

コントロールのプロパティを同じフォームの別のコントロールのプロパティ値にバインドしたいと考えています。

GroupBox と Check Box があります。チェック ボックスがオンの場合はグループ ボックスが有効になり、チェック ボックスがオフの場合はグループ ボックスが無効になります。ただし、このタスクは、チェックボックスの「CheckedChanged」イベントを実装することで実行できます。しかし、コードを書かずにこれを達成したいです。それが可能かどうかはわかりません。可能であれば、解決策を提供してください。 ここに画像の説明を入力

0 投票する
1 に答える
906 参照

javascript - プロパティ バインディングまたは Birt のクエリの Javascript

BIRT レポート データ セットのプロパティ バインディング クエリ テキスト フィールドに JavaScript を含めることはできますか? これを行う理由は、ユーザーから渡されたレポート パラメーターに応じてクエリを選択するためです。

0 投票する
1 に答える
417 参照

odata - プロパティバインディングとしての URL パラメータ

UI5 でURL パラメーターをプロパティ バインディングとして使用することは可能ですか?

私の問題は、異なる OData コレクションを同じ UI5 集約に配置したいということです。たとえば、「/Car("Mustang")/parts」と「/Car("Whatever")/parts」があるとします。どちらも同じビューに配置できます。

アプリケーションの URL には、http://something/#/carMustangのようなキーワードが含まれています。この URL は、「car{carHandle}」のようなルーティング パターンから来ています。

このようなことをどのように行うべきですか:

では、これを行うためのベストプラクティスは何でしょうか? コントローラーで厄介なフィドルを避けたいと思います。

0 投票する
1 に答える
719 参照

java - JavaFX 8 MapProperty アンバインドが機能しませんか?

これがバグなのか、それともJavaFX MapPropertyバインディングに何か欠けているのか、誰か説明してもらえますか?

シナリオ: 2 つの MapProperty インスタンス - マスターと子。

  1. まず、子をマスターにバインドします
  2. 次に、いくつかの値をマスターに保存します
  3. 子をマスターからバインド解除
  4. クリア子
  5. 両方のインスタンスが空です - なぜですか?
  6. いくつかの値を子に格納する
  7. 両方のインスタンスに同じ値が含まれています - なぜですか?

コード:

出力: