将JavaScript代码拆分为多个文件:最佳实践

5
我只使用ExtJS工作了2个星期。我的所有代码看起来像一个大文件。我在代码中包含了许多面板和其他的ExtJS对象。看起来像一棵大树) 有人可以给出一些简单的建议,用于定义和存储JS文件的代码部分吗?
2个回答

3

适合放在自己文件中的东西可以分为两大类:

模型

任何对象构造函数、处理数据的一组函数、业务逻辑、验证逻辑。

任何在页面上逻辑地操作数据而不写入/读取DOM的内容。

视图

任何呈现在页面上的内容。模板文件。任何操作DOM对象的内容。

还有一些杂项内容适合放在它们自己的文件中:

  • 服务器-客户端通信,Websockets,ajax。
  • 微型框架
  • 实用工具包
  • 路由帮助程序。

还有一些难以独立成文件的东西,比如基于事件的消息传递,将你的视图链接到你的模型。

通常,您要么使用打包工具将所有小文件混合成一个大文件发送到服务器,要么使用模块加载器,如require

您认为可以模块化的任何内容都可以放在自己的文件中。


没有太多要说的了。出于性能原因,您应该缩小对服务器的调用,但这也已经在上面讨论过了。 - sra
我现在正在移动,但我同时使用两个设备。我一回到笔记本电脑就会尽快回答你的问题... - sra
目前我正在使用YUI Compressor for .Net http://yuicompressor.codeplex.com/。但是我计划更仔细地研究Google Closure编译器。我动态创建了高达75%的JavaScript,因此我选择了这个。 - sra

1

如果你发现自己在重复编写代码,你可以将这些类制作出来,并将它们放入自己的文件中。此外,无论是否重复,你都可以沿着面板线进行分割。

因此,对于一个教用户如何将最低限度训练过的灰熊变成终身伴侣的应用程序,你可能会得到像这样的文件:

  • BearsAreNotDeadly.js
  • Search.js
  • Tutorials.js
  • GruesomePictures.js
  • ComplaintForm.js

...每个部分都是应用程序的一部分。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接