2017-08-02 15 views
0

結合した形でHTMLを更新するには、次のフィドルをご参照ください:Binding HTML IssueExtJSに:問題は

あなたは左側のパネル上のコンボボックスから行を選択すると、それは上の形でいくつかのHTMLと一緒に、バインドされた値を出力します右。 'Test Update'というラベルの付いたボタンをクリックすると、まずドロップダウンのバウンド値がクリアされ、HTMLも更新されてクリアされます。

Ext.ComponentQuery.queryで参照されているdisplayfieldの更新がこの順序で機能しないという問題があります。もし私が最初に更新を行うと、それはうまくいきますが、実際のアプリケーションでこれを試しても、それはありません(私のアプリでcomboboxsetValueは動作しますが、HTMLラベルを残します)。

なぜこの動作が起こっているのかについてのアイデアは、大歓迎です。

答えて

1

これは論理式を簡略化するための式を使用した方がよいでしょう。

viewModel: { 
    formulas: { 
     foo: function(get) { 
      var sel = get('peopleComboRef.selection'); 

      return sel ? ('HTML Label: ' + sel.get('name')) : ''; 
     } 
    } 
}, 

displayfieldにこの式を結合します。

{ 
    xtype: 'displayfield', 
    itemId: 'displayTest', 
    bind: { 
     html: '{foo}' 
    } 
} 

フィドル:https://fiddle.sencha.com/#fiddle/24f5&view/editor

+0

スウィート!私は数式の使用についても考えていませんでした。 –

関連する問題