目前,我已将我的所有JavaScript文件都包含在我的html的<head>
部分。
<!DOCTYPE html>
<html data-ng-csp>
<head>
<!-- ... -->
<script src="js/lib/wiki2html.min.js"></script>
<script src="js/lib/es6-promise.min.js"></script>
<script src="js/lib/l10n.min.js"></script>
<script src="js/lib/angular.min.js"></script>
<script src="js/lib/angular-route.min.js"></script>
<script src="js/lib/angular-sanitize.min.js"></script>
<script src="js/lib/angular-touch.min.js"></script>
<script src="js/wrapper-indexeddb.js"></script>
<script src="js/wrapper-devicestorage.js"></script>
<script src="js/util.js"></script>
<script src="js/app.js"></script>
<script src="js/app-services.js"></script>
<script src="js/app-directives.js"></script>
<script src="js/app-controllers.js"></script>
</head>
<body data-ng-app="FireDict">
<!-- ... -->
</body>
</html>
我考虑过使用构建和打包工具以及require.js
或browserify等工具,但我的大多数依赖项都不是以npm模块或requirejs定义形式出现的。我之前从未使用过任何js构建工具,但如果不是所有的依赖项都采用正确的模块化/打包格式,那么它似乎需要做很多工作。
包含AngularJS和我正在使用的其他脚本的最优雅方式是什么?
一些背景知识:我正在为基于AngularJS的Firefox OS编写webapp。 (我之前在这里描述的关于ngCsp的问题是由于我对angular-csp.css
的无知。我只是忘了把它包括在内。)
答案 0 :(得分:0)
我会再看看RequireJS。使用RequireJS并不是所有的软件包都需要格式化为AMD模块。如果依赖项不是RequireJS(AMD)格式,您可以使用shim configuration代替RequireJS配置中的依赖项。