拆分Extjs生成的app.js构建文件到extjs特定代码&我们的应用代码

时间:2016-03-03 14:16:22

标签: extjs

我想将Extjs生成的app.js文件拆分为app特定代码& extjs特定代码。目的是减少app.js&的大小。应用程序将加载更快。 我已经阅读了一些链接,但由于我是extjs的新手,我想要一些现成的代码(如果可用),就像在一些.xml文件中一样。

2 个答案:

答案 0 :(得分:1)

应用程序不会加载更快,因为应用程序仍然需要ExtJS代码和您自己的代码才能执行任何操作。

此外,如果所有内容都在一个文件中,gzip压缩效果会更好,因此如果您启用了静态内容的压缩,那么您的双文件应用程序将比以前加载更慢。如果你没有,你肯定应该,它会将加载时间缩短一半甚至更少。

也就是说,您可以使用多个<script>标记包含更多javascript文件:

<!DOCTYPE HTML>
<html lang="en-US">
<head>
    <meta charset="UTF-8">
    <title>Verwarming HollandVilla</title>
    <script type="text/javascript" src="ext-modern-all.js"></script>
    <script type="text/javascript" src="verwarming.js"></script>

但是你不能将编译好的app.js拆分成只包含你的代码的部分和另一部分只包含ExtJS代码的部分,因为在app.js中这两个域都是混合和损坏的。

但是,您仍然可以在app.js。之前分割Ext.define(),然后检查两个javascript文件是否仍然在语法上有效。如果是,您没有在语义上进行任何更改,因此应用程序应该像以前一样工作。

如果您的加载时间确实缩短,请发布结果,因为我还没有找到通过实验验证预期结果的人。

答案 1 :(得分:0)

除了 Alexander 编写的内容之外,您还可以使用“输出”定义拆分应用程序和框架代码。在以下示例中,这是针对生产构建完成的:

"production":{
   "output":{
      // Split the framework from the application.
      "framework":{
         "enable":true
      }
   },
   "compressor":{
      // Enable compressor (other options: closure, strip)
      "type": "yui"
   }
}

此外压缩被激活(这里是:yui)。 “Sencha Compiler Reference”和有关“Resource Management”的文档也可以帮助您: https://docs.sencha.com/cmd/guides/advanced_cmd/cmd_compiler_reference.html https://docs.sencha.com/cmd/guides/resource_management.html