我想学习extjs,所以我是一个新手,很抱歉这里有任何愚蠢的问题。
这是我的索引.html页面:
<html>
<head>
<meta charset="UTF-8">
<title>Test Hello</title>
<script type="text/javascript" src="extjs-4.2.1-gpl/ext-all.js"></script>
<script type="text/javascript" src="extjs-4.2.1-gpl/ux/form/LoginForm.js"></script>
<!-- <link href="extjs-4.1.1a/KitchenSink-all.css" rel="stylesheet" type="text/css" /> -->
<link href="extjs-4.2.1-gpl/resources/css/ext-all.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div align="center" id= "content" >
<script type="text/javascript">
var loginForm = Ext.create("test.view.form.LoginForm", {
id : "panellogin",
renderTo : 'content'
});
</script>
</div>
</body>
</html>
和登录表单:
Ext.define('test.view.form.LoginForm', {
extend: 'Ext.form.Panel',
xtype : "test.view.form.LoginForm",
title: 'Login',
frame:true,
width: 320,
bodyPadding: 20,
defaultType: 'textfield',
defaults: {
anchor: '100%'
},
initComponent: function() {
var me = this;
me.items = [me.contentPanel];
me.contentPanel = Ext.create("Ext.grid.Panel", {
border: true,
align :"center",
layout: {
type: "hbox",
align: "center"
},
items: [
{
allowBlank: false,
fieldLabel: 'User ID',
name: 'user',
emptyText: 'user id'
},
{
allowBlank: false,
fieldLabel: 'Password',
name: 'pass',
emptyText: 'password',
inputType: 'password'
},
{
xtype:'checkbox',
fieldLabel: 'Remember me',
name: 'remember'
}
]
});
}
});
我到底做了什么:
- 从煎茶网站下载extjs 4.2.1-gpl(压缩约65 Mo)
- 当我发现巨大的尺寸时,我删除了示例,文档之类的东西
- 在 4.2.1-gpl 目录中名为 ux 的目录中移动了 src
- 保留资源、图像和区域设置文件夹。
我需要建议,这是一个好方法吗?我不能放整个内容,因为它是300多Mio!请保留什么?
Firebug向我显示此错误:TypeError: c is undefined (in ext-all.js line 21)
谷歌浏览器显示这个:Uncaught TypeError: Cannot read property 'length' of undefined
亲切问候
你能说说
在加载 extjs 源代码后执行代码 (Ext.onReady...):
Ext.onReady(function () {
var loginForm = Ext.create("test.view.form.LoginForm", {
id : "panellogin",
renderTo : 'content'
});
});
这不是你应该做的。特别是删除东西并将 src 重命名为 ux。此外,test.view.form.LoginForm
的类定义应该在文件app/view/form/LoginForm.js
中,而不是ux/form
。
阅读文档如何入门,尤其是 MVC 应用程序体系结构和应用程序体系结构系列。