在 GAE上写Dojo应用,GAE有1000文件上传限制,虽然可以通过删除dojoroot下的dojox(不会用到),删除国际化文件,把文件数降低到1000以下(还要设置
<resource-files>
<exclude path="/dojoroot/**.*" />
<exclude path="/**.jpg" />
<exclude path="/**.gif" />
<exclude path="/**.js" />
<exclude path="/**.css" />
</resource-files>
排除这些文件,否则gae会把他们既当成静态文件又当成资源文件,一个文件数了2次,很容易超过1000),这样才可以发布dojo包到gae上开始写应用,
但还有一个方法就是dojo支持跨域加载,把http://o.aolcdn.com/dojo/1.3.0 替换dojoroot就可以,要注意的是
<script type="text/javascript" src="http://o.aolcdn.com/dojo/1.3.0/dojo/dojo.xd.js"
djConfig="parseOnLoad: true,isDebug:true"></script>
中是 dojo.xd.js 而不是 dojo.js,这样你的项目文件就不用包含任何dojo文件了
改了之后页面加载速度也快了
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Account Preferences Final Form</title>
<style type="text/css">
@import "http://o.aolcdn.com/dojo/1.3.0/dijit/themes/tundra/tundra.css";
@import
"http://o.aolcdn.com/dojo/1.3.0/dojo/resources/dojo.css"
</style>
<script type="text/javascript" src="http://o.aolcdn.com/dojo/1.3.0/dojo/dojo.xd.js"
djConfig="parseOnLoad: true,isDebug:true"></script>
<script>
dojo.require("dojo.parser" );
dojo.require("dijit.layout.ContentPane" );
dojo.require("dijit.layout.TabContainer" );
dojo.require("dijit.form.ValidationTextBox" );
dojo.require("dijit.form.DateTextBox" );
</script>
<style>
.formContainer {
width: 600px;
height: 600px;
}
label {
width: 150px;
float: left;
}
</style>
</head>
当dojo与其他的css文件一起使用时,dijit会遭到破坏
一次加载所有组件
dojo.require("dojo.parser" );
dojo.require("dijit.dijit");
dojo.require("dijit.dijit-all");
本文介绍了解决GAE上Dojo应用1000文件上传限制的方法,包括通过配置排除部分文件以及利用Dojo的跨域加载特性来加速页面加载。
468

被折叠的 条评论
为什么被折叠?



