我正在构建WebApp,整个项目基于AngularJS
和PHP
(作为后端),我在最后一部分,给它最后的接触,测试等。我怀疑是否建议将所有.js
文件连成一个。我问这个是因为我使用了很多代码,我自己编写的代码,以及第三方库,例如表单掩码,对话框,角度材料等。
我有两个页面结构,一个dist
文件夹用于最终缩小的.js
文件,还有一个src
文件夹,其中包含所有内容。{/ p>
src dist
├── app ├── js
│ ├── .app-ctrl.js │ ├── .app.min.js
│ ├── .app-dire.js │ ├── .angular.min.js
│ └── .app-fact.js │ └── .angular-animate.min.js
│ └── .app-main.js │ └── .angular-material.min.js
└── js │ └── .[...etc...].min.js
│ ├── .angular.min.js └── lib
│ ├── .angular-animate.min.js ├── .ngDialog.min.js
│ └── .angular-material.min.js ├── .ngMask.min.js
│ └── .[...etc...].min.js └── .[...etc...].min.js
└── lib
├── .ngDialog.min.js
├── .ngMask.min.js
└── .[...etc...].min.js
然后在我的html
文件中,我正在加载每个文件,如下所示:
<!-- Main Scripts -->
<script src="dist/js/app.min.js"></script>
<script src="dist/js/angular.min.js"></script>
<script src="dist/js/angular-router.min.js"></script>
[..etc..]
<!-- Lib Scripts -->
<script src="dist/lib/ngMask.min.js"></script>
<script src="dist/lib/ngDialog.min.js"></script>
<script src="dist/lib/ngNotification.min.js"></script>
[...etc...]
我最大的疑问是关于所有这些文件的连续性。
建议这样做吗? 我应该连接哪些文件?因为我知道棱角是一个大的图书馆,不应该与其他人连接(至少我不会这样做)。但还有其他的,较小的。
由于我是AngularJs
中的新用户(以及javascript,仅基于我从Angular
学到的内容),这样做有什么好处?是否会提供更好的表现?更好的代码安全性?
我该怎样做才能让这些事情变得更好? 这些是我想知道的重要问题,以便更好地开发,也是我应用程序的更好的acabamento代码。
我正在阅读有关此内容的更多内容,除了使代码更安全之外,我还找到了obfuscate
代码的选项。我甚至发现了这个npm plugin grunt-obfuscator,但它没有用。据我所知,它不适用于AngularJS
。还有另一种方法吗?要混淆代码还是让它更安全?
答案 0 :(得分:1)
除非你想使用CDN,否则如果你有一个应用程序,肯定会建议连接。没有应用程序脚本,角度依赖性将毫无用处,反之亦然。它们是核心库,第三方库还是您自己的代码并不重要。
主要关注的是加载速度(一个大的js文件将更快下载)。在这种情况下,您不需要再进行任何连接,只需按照加载js文件的顺序进行操作即可。使用Grunt,Gulp或any other tool执行此操作。
如果有几组可能加载的js文件,那么事情会变得不同,而某些应用程序部分依赖于其他一些,但不是全部。在这种情况下,应该有几个连接文件。手动连接在这里是低效的,但模块捆绑器是通过捆绑/块。 Browserify,RequireJS,JSPM和Webpack都具备此功能。