`
luchonglin4
  • 浏览: 1501 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

ext4 require加载文件之后怎么实例化

阅读更多

<div class="iteye-blog-content-contain" style="font-size: 14px"></div>

  ext4  新引用了require这个异步加载机制,但是我用require引用了俩个需要加载的子类的时候,不能通过create去实例化,请问各位大神有没有什么好的解决办法尴尬,代码如下 :

//(function(){
Ext.Loader.setConfig({
			enabled : true,
			paths : {
				'myApp' : 'js/myApp' //配置路径
			}
		});
/*Ext.require('myApp.view.tree.tabPanels'
 // , 'myApp.view.tree.myTreePanelView'
 );*/
//var tabPanel=Ext.create('myApp.view.tree.tabPanels',{});
//var treePanelView=Ext.create('myApp.view.tree.myTreePanelView',{});
/*	 var tabPanel=Ext.create('js.testjs.commonjs.tabPanels',{
 title:'this my new Panel'
 });*/
/*Ext.Loader.setPath('myApp', 'js/myApp');
 Ext.require('myApp.view.tree.indexPage');*/
Ext.onReady(function() {
	Ext.QuickTips.init();

	// NOTE: This is an example showing simple state management. During
	// development,
	// it is generally best to disable state management as dynamically-generated
	// ids
	// can change across page loads, leading to unpredictable results. The
	// developer
	// should ensure that stable state ids are set for stateful components in
	// real apps.
	Ext.state.Manager.setProvider(Ext.create('Ext.state.CookieProvider'));

	Ext.create('Ext.Viewport', {
		/*Ext.define('myApp.view.tree.indexPage',{
		 extend   : 'Ext.Viewport',*/
		uses : ['myApp.view.tree.myTreePanelView', 'myApp.view.tree.tabPanels'],
		id : 'border-example',
		layout : 'border',
		items : [
				// create instance immediately
				Ext.create('Ext.Component', {
							region : 'north',
							height : 50, // give north and south regions a
							// height
							autoEl : {
								tag : 'div',
								html : '<p><h3>金智万维软件系统</h3></p>',
								bodyStyle : 'background:#ffc; padding:10px;'
							}
						}), {
					// lazily created panel (xtype:'panel' is default)
					region : 'south',
					contentEl : 'south',
					split : true,
					height : 100,
					minSize : 100,
					maxSize : 200,
					collapsible : true,
					collapsed : true,
					title : 'South',
					margins : '0 0 0 0'
				}, {
					xtype : 'tabpanel',
					region : 'east',
					title : 'East Side',
					dockedItems : [{
								dock : 'top',
								xtype : 'toolbar',
								items : ['->', {
											xtype : 'button',
											text : 'test',
											tooltip : 'Test Button'
										}]
							}],
					animCollapse : true,
					collapsible : true,
					split : true,
					width : 225, // give east and west regions a width
					minSize : 175,
					maxSize : 400,
					margins : '0 5 0 0',
					activeTab : 1,
					tabPosition : 'bottom',
					items : [{
								html : '<p>A TabPanel component can be a region.</p>',
								title : 'A Tab',
								autoScroll : true
							}, Ext.create('Ext.grid.PropertyGrid', {
										title : 'Property Grid',
										closable : true,
										source : {
											"(name)" : "Properties Grid",
											"grouping" : false,
											"autoFitColumns" : true,
											"productionQuality" : false,
											"created" : Ext.Date.parse(
													'10/15/2006', 'm/d/Y'),
											"tested" : false,
											"version" : 0.01,
											"borderWidth" : 1
										}
									})]
				}, {
					region : 'west',
					stateId : 'navigation-panel',
					id : 'west-panel', // see Ext.getCmp() below
					title : '导航-ERP管理',
					split : true,
					width : 200,
					minWidth : 175,
					maxWidth : 400,
					collapsible : true,
					animCollapse : true,
					margins : '0 0 0 5',
					layout : 'accordion'
					//items : [treePanelView]
			}	, this.tabPanel
		/*{
		//title:'this is myPanel',
		region: 'center', // a center region is ALWAYS required for border layout
		id:'center-tab',
		deferredRender: false,
		activeTab: 0,     // first tab initially active
		resizeEl: 'center-iframe'
		// items:[myFirstPanal]
		}*/]
		,
			initComponent:function(){
			//var treePanelView=Ext.create('myApp.view.tree.myTreePanelView',{});
			debugger
			 var tabPanel=Ext.create('myApp.view.tree.tabPanels');
			 this.callParent();
		}
			//renderTo: Ext.getBody()   //渲染到页面
	});
		// get a reference to the HTML element with id "hideit" and add a click
		// listener to it
		// alert("hello world!!")
});
//Ext.create('myApp.view.tree.indexPage',{})
//})();
 

 myTreePanelView和tabPanels  是俩个define的类文件   可以引入但是不能实例化

弄了俩天还是出不来 ,求大神帮忙啊

分享到:
评论
1 楼 luchonglin4 2014-11-27  
     自己先顶一个

相关推荐

    Ext4 动态加载js例子

    在 Ext4 中,`Ext.Loader` 提供了这样的功能,使得开发者可以灵活地控制哪些类或文件应该在何时被加载。 下面我们将详细探讨 `Ext.Loader` 的使用方法和相关知识点: 1. **配置 `Ext.Loader`** 在使用 `Ext....

    ext树实例代码

    - 在给定的代码片段中,我们看到通过`Ext.onReady`函数来初始化Ext JS应用程序,确保DOM完全加载后再执行JS代码。 - 使用`Ext.require`导入了多个模块,如`Ext.form.*`、`Ext.tree.*`等,这表明开发者准备使用...

    ext4.0改变 比较完整的介绍

    5. **实例化对象的方式**:推荐使用`Ext.create`函数代替`new`关键字创建对象,如`var win = Ext.create("Ext.window.Window", {...})`。这种方式更利于依赖注入和动态加载。 6. **动态类加载**:引入了`Ext.Loader...

    extjs4 loader 官方实例

    4. **自动加载**:如果设置了`requires`或`uses`属性,Loader会在类实例化前自动加载所有必要的类。例如,`Ext.define('MyClass', { requires: ['OtherClass'] })`会确保`OtherClass`在`MyClass`使用前被加载。 5. ...

    CI中使用其他类库解决方法参考

    - **类库初始化**: 对于存在的类库,先加载基础类库文件,再加载具体的类库文件,并将类库实例化后添加到类数组中。 #### 总结 在CI框架中集成第三方类库(如PEAR)是一个常见的需求。通过上述步骤,我们可以轻松...

    ExtJs4新类库特性详解及JS新语法扩展.docx

    类的创建、继承和实例化变得更加规范,有助于代码组织和维护。 - **命名规范**:为了保证代码的可读性和一致性,ExtJS4提倡使用驼峰命名法,避免下划线和数字。类应组织在命名空间(包)下,如`MyCompany.data....

    ExtJS4中的requires使用方法示例介绍

    通过`Ext.Loader.setConfig`配置加载器路径,然后用`Ext.require`指定需要加载的模块,可以确保在需要时按需加载,从而提升应用的启动速度和用户体验。在实际开发中,合理利用这一特性可以显著改善大型应用的性能...

    Extjs4.0一些常见入门学习范例带注释详解

    通过`Ext.create`实例化`MyApp.MyWindow`并调用`show`方法显示窗口。 2. 使用mixins实现功能重用: 在JavaScript中,`mixins`允许我们将行为插入到类中。在这里,我们定义了一个`MyApp.mixins.log`,包含`start...

    ExtJS 4.0 的改变

    通过 `setPath` 和 `require` 等方法,可以在运行时按需加载文件。启用动态加载的配置如下: ```javascript Ext.Loader.setConfig({ enabled: true, paths: { 'My': 'my_own_path' } }); ``` - 这允许...

    Yii实现自动加载类地图的方法

    配置完成"classMap"后,运行应用程序实例,当程序中创建"JPhpMailer"类的实例时,由于"classMap"的存在,Yii框架的自动加载器会自动包含正确的文件路径,无需开发者再显式地使用Yii::import()来引入文件。...

    ExtJS4 动态生成的grid导出为excel示例

    这样设置了命名空间和加载路径后,你可以使用`Ext.ux.exporter.Exporter`这个组件来实现在Grid上的导出按钮。在你的Grid配置中添加一个`xtype: 'exporterbutton'`的组件,指定对应的store和Grid实例: ```...

    php yii源码分析

    这个方法首先调用 `createApplication` 静态方法,然后通过 `new CWebApplication($config)` 实例化 `CWebApplication`,这个类继承自 `CApplication`,因此也会执行 `CApplication` 的构造函数。 4. **构造函数及...

    thinkphp3.2.3 PHPExcel组件

    3. **使用示例**:在控制器中,实例化PHPExcel对象,创建或读取Excel文件。例如,要创建一个新的Excel文件并写入数据: ```php $objPHPExcel = new \PHPExcel(); $sheet = $objPHPExcel-&gt;getActiveSheet(); $...

    ExtJs整合Echarts的示例代码

    接着,我们需要引入Echarts的JS文件,并在页面加载完成后初始化Echarts实例。这通常可以通过`require`或`import`语句完成。然后,我们可以通过Echarts的`echarts.init`方法来初始化图表容器,并设置相应的配置选项,...

    vue+webpack支持多页面打包

    这里的`main.js`文件通常是每个Vue应用的入口,导入Vue实例和组件等。 2. **配置多个输出(output)** 对应于每个入口,你需要配置相应的输出路径和文件名。这通常涉及`path`和`filename`属性: ```javascript ...

    DX1.5 手机正式版

    //实例化 使用此种方法是为了兼容PHP4 与PHP5 复制代码 这里我们进到./source/class/class_core.php 看看这个核心类 首先来分别看看这些属性 var $db = null;//存储数据库对象 var $mem = null;//存储内存缓存对象 ...

    PHP实现的简单缓存类

    - 构造函数__construct($dir='', $lifetime=1800):在实例化缓存类时,可以通过构造函数设置缓存目录和缓存有效期,默认有效期为1800秒。此外,会检查缓存目录是否存在且有效,如果目录不存在,则会尝试创建该目录。...

    php调用自己java程序的方法详解

    `引入Java类,然后实例化并调用Java类的方法。例如: ```php require_once("java/Java.inc"); header("content-type:text/html; charset=utf-8"); // 获取Java类的实例 $system = new Java('java.lang....

    echarts图表导出excel示例

    在示例中,`require.config`用于配置模块加载路径,确保`echarts`以及`echarts/chart`下的`bar`, `line`, 和 `pie`模块能够正确加载。这样,我们就可以在页面上初始化ECharts实例并绘制所需图表。 ```javascript ...

    详解extract-text-webpack-plugin 的使用及安装

    `extract-text-webpack-plugin`是Webpack中的一个插件,主要用于从JavaScript模块中提取CSS代码,避免将其内联到JS文件中导致样式加载混乱的问题。在Web开发中,将CSS与JavaScript分离有利于提高页面加载效率,避免...

Global site tag (gtag.js) - Google Analytics