我很想知道其他团队如何在他们的项目中使用Javascript。目前我有一个MVC .Net应用程序 - 使用面向服务的体系结构与实体框架...等等等等等等 - 不是我想要问的但是很有用。对于客户端,我使用信号器与淘汰赛。 Knockout需要绑定视图模型,然后SignalR参与其中并获得乐趣。
要拆分它(以及获取所有依赖项Knockout,jQuery等)我决定使用RequireJS并将其结构如下:
|- \Js
|- app.js (This actually creates a connection with signalr)
|- config.js (requirejs.config - lists all the js libraries and then lists their dependancies)
| - \App
|- SomeFunction.js (Initialises the viewmodel and binds to the view)
|- \ViewModel
|- SomeViewModel.js (Consists of the view model)
|- SomeOtherViewModel.ks (You get the idea...)
(我没有列出这些库,但它们列在Js文件夹中的供应商文件夹中)
我将文件分割得太多的原因是因为1000多行javascript确实难以阅读,而且它使我的团队更容易处理项目的不同元素。但这确实有一个缺点 - 当我查看每个请求的流量时,它的1.5mb听起来并不那么糟糕,但随着javascript文件的增长,它正成为一个日益严重的问题(特别是我承诺的应用程序)会更快!)
我尝试使用供应商库的缩小版本,但这确实没有太大影响。有没有人遇到过这个问题,你是怎么克服这个问题的?我不确定如何缩小javascript(不手动执行此操作)并仍然使用requirejs来管理依赖项。
由于
答案 0 :(得分:0)
您可以使用RequireJS'r.js
optimizer优化代码。优化器知道如何优化RequireJS模块。它可以配置为保持供应商的东西不变。查看r.js
的文档,尝试一下,如果遇到特定问题,可以提出更多问题。对于如何使用它没有一个通用的答案。
通过使用优化程序,您可以显着减少网络请求的数量和传输的数据的大小。在我正在开发的其中一个应用程序中,它非常重要,在我使用优化器之前,我在远程服务器场上运行Selenium测试时得到了测试超时。优化后超时消失了。