日期:2014-05-17  浏览次数:20586 次

引用jsLoader.js来管理页面所需引入的js、css
jsLoader.js来管理页面所需引入的js、css

JSLoader提供了JavaScript库共享资源
JSLoader被描述为一个零安装解决方案,允许Web站点无需学习如何安装即可使用新的工具包。该类型解决方案将使浏览器和代理缓存更加有效,并将防止多个站点维护各自版本的工具包。JSLoader的创造者回答了为什么创建它的问题:

快速应用,以及来自主机托管位置的简单原型(零安装)
企业级设置中的文件共享资源(帮助缓存和版本管理)
为开发者包含资产提供了一种简单方式,它将促进应用并给那些不想下载代码静态副本(维护梦魇)的人们以充分的价值
JSLoader不是第一个寻求满足这些需求的库。JSLoader的创造者之一,Dov Katz承认这一点并列出了类似的库:OpenJSAN 和OpenMV 。但表示它们不能完全满足需求。

当我被分派这一任务的时候,我所需要的是一个针对企业级环境产品就绪(production-ready)的、开发者友好的解决方案。我的主要目标是让开发者更容易使用script,他们不应该自己进行安装。直到所有由OpenAjax的Hub或OpenJSAN使用的脚本被准备好为止,JSLoader系统提供了足够的好处,让我们在一个企业级产品设置中进行处理。
在Ajaxian上有一个 有趣的讨论。众多的相关实现被提及,从Csi到jsPax。Kat指出许多争论归结为去了解它意欲何为(想要成为什么,不想成为什么)

在许多基本层级,这只不过是在页面上编写相同的脚本和风格标签,无需知道以什么顺序引入哪些脚本。仅仅这样对我的利益相关者就已经很有用了。它不是用来解决命名空间问题的,大多数情况下,一个企业设置状态都最终在你的浏览器缓存中,因为多个内部站点共享了同一个loader和众多资产。


一步:将jsloader.js引入   
将jsloader先下载在放到某目录下   
     <script type="text/javascript" src="../resources/jsloader.js"></script>   
二步:引入所需的js和css  此处注意它(../)会自动被截去   
<script type="text/javascript">   
        JSLoader.loadJavaScript("/ExtTestPro/WebContent/resources/libs/ext/adapter/ext/ext-base.js");   
        JSLoader.loadJavaScript("/ExtTestPro/WebContent/resources/libs/ext/ext-all.js");   
        JSLoader.loadStyleSheet("/ExtTestPro/WebContent/resources/libs/ext/resources/css/ext-all.css");   
</script>