0

展開しなくても問題なく動作するsenchatouch2アプリがあります。ただし、テスト、本番、またはネイティブのいずれかにデプロイすると、ナビゲーションビュー内にいくつかのボタンがあり、タップイベントが機能しなくなります。エラーは表示されません。なぜこれが展開後にのみ発生するのか理解できません。

関連するコードは次のとおりです。

コントローラ:

control: {

        '#main-function': {
            tap: 'loadFunction'
         },


         loadMyBoat: function() {
              this.getProducts().up().push({
          xtype: 'myxtype',
         })



         Ext.getStore('Items').getProxy().setUrl('myurl');
         Ext.getStore('Items').load();
},

意見:

Ext.define('MyBoat.view.ItemList', {
extend: 'Ext.navigation.View',
xtype: 'myxtype',

config: {
    title: 'My Title',
    styleHtmlContent: true,
    defaultBackButtonText: 'Items List',

    items: {
        xtype: 'list',
        itemTpl: '{Field_Name}',


        title: 'Tap on a boat to access further details',
        store: 'Boats'
    }
}
})

誰かがこれに遭遇したことがありますか?どんな助けでも大歓迎です。

4

2 に答える 2

0

DOMエディターを開きます(クロームでは、F12だと思います)。コントロールセレクターは#main-functionを選択しているため、これが有効なセレクターであることを確認する必要があります。

開発者ツールウィンドウのコンソールで、次のように入力します。

Ext.ComponentQuery.query('#main-function')

これは、コントローラーが試行していることです。

于 2012-06-08T15:59:58.667 に答える
0

たくさんのデバッグの後、私はなんとか問題を修正することができました。次のコードを使用してコンポーネントを生成すると、展開後にうまく機能しないことがわかります。

new Ext.button({.....})

代わりに、newキーワードではなくxtypesを使用する必要があります。これは、デプロイヤーがすべてのjsコードを1つのファイルに格納するという事実と関係があると思います。したがって、新しいキーワードを使用していたため、実際にはコンテキストに存在しないときにjsファイルのどこかに作成されていました。 。奇妙なことに、エラーが表示されないので、これが他の人々に役立つことを願っています。

于 2012-06-12T07:28:58.843 に答える