0

idにプロパティを指定しています'Ext.Container'

このコンテナを別のファイルで再利用したいと思います。このコンテナの子を複数のファイルに入れたい。
ただし、を指定したidので、初めてアクセスしようとするとエラーになります。

[警告][Ext.Component#constructor]gBlock1すでに使用されているID(​​)でコンポーネントを登録しています。既存のコンポーネントが破棄されていることを確認してください(Ext.Component#destroy()

私のコードスニペット..

Ext.define('ABC.view.XYZ', {
    extend: 'Ext.Container',
    id: 'gBlock1',
    xtype: ...
    ......

idコンテナのすべてのボタンに一度にアクセスしたかったので、プロパティを使用していました。

var buttons = Ext.ComponentQuery.query('#gBlock1 button');

後でそれをなどとして使用しbuttons[0]ますbuttons[1]...

私は何をすべきか ?itemsIdの代わりに使用する方法Ext.Container

4

1 に答える 1

0

idはSenchaTouchの特別な構成であり、コンポーネントタイプごとに一意になるように設計されているため、複数回使用しないでください。

あなたの場合、はるかに簡単な解決策があります:

  • いくつかのカスタム構成を定義します。

    type: 'SpecialType';

  • 後で使用してクエリします。

    var buttons = Ext.ComponentQuery.query('button[type="SpecialType"]');

于 2012-06-17T07:31:27.280 に答える