1

私の Web プログラミングの経験は、中級の独学の JS と jQuery と PHP のダッシュに限られています。ExtJS は、まったく別の動物であることが判明しています。

特に、ドキュメントで使用されている構文に従っているため、コントローラーが期待どおりに動作しない理由がわかりません (例で実際に何が起こっているかを説明できないため、ますます役に立たなくなっています. ..しかし、私は脱線します)。

Main.js

    Ext.define("cs.view.Main", {
        extend: 'Ext.TabPanel',
        tabBarPosition: 'bottom',

        requires: [
            'cs.view.form',
            'cs.view.location',
            'Ext.TitleBar',
            'cs.controller.geolocate'
            ],

        config: {
            tabBar: {
                docked: 'bottom',
            },
            defaults: {
                flex: 1
            },
            items: [
                { xtype: 'form' },
                { xtype: 'location' }
                ]
            },
    });

form.js

Ext.define('cs.view.form', {
    extend: 'Ext.form.Panel',
    requires: 'cs.controller.geolocate',
    id: 'ClientFinderForm',

    config: {
        title: 'Home',
        iconCls: 'home',
        items: [
        {
            xtype: 'toolbar',
            docked: 'top',
            title: 'Client Finder'
        },
        {
            xtype: 'textfield',
            name: 'address',
            label: 'address'
        },
        {   
            xtype: 'textfield',
            name: 'dist',
            label: 'distance(mi)'
        },
        {
            xtype: 'button',
            ui: 'confirm',
            text: 'submit',
            id: 'submitButton',
        }
            ]
        },
});

geolocate.js

Ext.define('cs.controller.geolocate', {
    extend: 'Ext.app.Controller',

    config: {
        control: {
            aButton: {
                tap: 'message'
            }
        },//control
        refs: {
            aButton: '#submitButton'
        },//refs
    },//config

    message: function(){
        Ext.Msg.alert("Success", "Finally!");
    }
});
4

1 に答える 1

1

sencha touch 2 はビュー:[] をあなたのアプリに入れたいと思っていると思います。js

また、cs.view.form で xtype:'form' を取り出す必要があります。これは、Ext.form.panel を拡張することによって、そのフォームが既に認識されています。

送信ボタンからエイリアスを削除します。エイリアスを使用するには、送信ボタンを独自に定義する必要があります。

于 2012-04-11T15:37:31.753 に答える