Extjs Calendar Pro-如何配置以使用src路径不在可扩展的所有调试中

Extjs Calendar Pro-如何配置以使用src路径不在可扩展的所有调试中,extjs,extjs4.1,Extjs,Extjs4.1,我使用extensible-1.5.1并在中运行应用程序 extensible-1.5.1/examples/calendar/TestApp/test app.html 我试图通过在表单中添加一个新的textfield来定制Event表单窗口。这里是表单默认值 但我找不到要编辑的文件 我认为在extensible-1.5.1\src\calendar\form\EventWindow.js中。但当我删除src文件夹时,项目仍然在工作,没有任何变化 怎么做谢谢 编辑 我在extensiblea

我使用
extensible-1.5.1
并在中运行应用程序

extensible-1.5.1/examples/calendar/TestApp/test app.html

我试图通过在表单中添加一个新的
textfield
来定制
Event
表单窗口。这里是表单默认值

但我找不到要编辑的文件

我认为在
extensible-1.5.1\src\calendar\form\EventWindow.js
中。但当我删除
src
文件夹时,项目仍然在工作,没有任何变化

怎么做谢谢

编辑
我在
extensiblealldebug.js
文件中发现了这一点。但是这个文件真的很复杂


如何在extjs示例中配置使用
extensible-1.5.1\src\
中的数据,如
calendar
,您是正确的,因为您需要使用的类是
extensible.calendar.form.EventWindow
。但是,您不应该编辑该文件,而应该扩展该类并创建自己的版本。您可以将该文件用作指南,并覆盖
getFormItemConfigs
函数,根据需要修改表单:

Ext.define("MyApp.view.EventWindow", {
    extend: "Extensible.calendar.form.EventWindow",
    modal: true,
    enableEditDetails: false,

    initComponent: function()
    {
        this.callParent();
    },

    getFormItemConfigs: function() {
        var items = [/*your form items here */];

        return items;
    },
    //... other stuff here maybe...
});
然后,您可以覆盖可扩展的.calendar.view.AbstractCalendar
以使用刚才创建的类:

Ext.define("MyApp.view.AbstractCalendarOverride", {
    override: 'Extensible.calendar.view.AbstractCalendar',

    getEventEditor : function()
    {
        this.editWin = this.ownerCalendarPanel.editWin;

        if(!this.editWin)
        {
            //Change this line:
            this.ownerCalendarPanel.editWin = Ext.create('MyApp.view.EventWindow', {
                id: 'ext-cal-editwin',
                calendarStore: this.calendarStore,
                modal: this.editModal,
                enableEditDetails: this.enableEditDetails,
                listeners: {
                    'eventadd': {
                        fn: function(win, rec, animTarget) {
                            //win.hide(animTarget);
                            win.currentView.onEventAdd(null, rec);
                        },
                        scope: this
                    },
                    'eventupdate': {
                        fn: function(win, rec, animTarget) {
                            //win.hide(animTarget);
                            win.currentView.onEventUpdate(null, rec);
                        },
                        scope: this
                    },
                    'eventdelete': {
                        fn: function(win, rec, animTarget) {
                            //win.hide(animTarget);
                            win.currentView.onEventDelete(null, rec);
                        },
                        scope: this
                    },
                    'editdetails': {
                        fn: function(win, rec, animTarget, view) {
                            // explicitly do not animate the hide when switching to detail
                            // view as it looks weird visually
                            win.animateTarget = null;
                            win.hide();
                            win.currentView.fireEvent('editdetails', win.currentView, rec);
                        },
                        scope: this
                    },
                    'eventcancel': {
                        fn: function(win, rec, animTarget){
                            this.dismissEventEditor(null, animTarget);
                            win.currentView.onEventCancel();
                        },
                        scope: this
                    }
                }
            });
        }

        // allows the window to reference the current scope in its callbacks
        this.editWin.currentView = this;
        return this.editWin;
    }
});
这可能不会给你真正需要的东西,但希望它能让你走上正轨