如何处理其他目录中的角度模块依赖?

时间:2015-04-26 23:18:45

标签: javascript angularjs

让我们说,我有一个主要模块:

angular.module('myApp', ['myApp.view1']);

另一个模块

angular.module('myApp.view1', ['ngRoute']) 

第二个是在项目的另一个目录中。第一个模块找不到它的依赖关系,只有我还添加

<script src="view1/view1.js"></script> in the index.html

,但如果有大量的javascript文件,很快就会很难手工管理。 管理角度模块之间的依赖关系的最佳方法是什么,以便它们可以相互识别?

2 个答案:

答案 0 :(得分:4)

您可以使用gruntgulp之类的任务运行器,并在构建步骤中连接所有javascript文件,并将该文件包含在index.html文件中。我使用gulp,这是一个示例gulp任务,可以帮助您使用gulp-concat插件连接所有JS文件。

<强> gulpfile.js

var gulp = require("gulp");
var concat = require("gulp-concat");

//if all your source js files are inside the src directory
var srcJs = ["src/**/*.js"];

gulp.task("js", function() {
    return gulp.src(srcJs)
               .pipe(concat("app.js") // concat into 1 file called app.js
               .pipe(gulp.dest("dist"); //save app.js in dist directory
});

因此,在项目根文件夹中添加此gulpfile.js,每次更改代码时,请转到命令行中的项目根文件夹并运行命令“gulp js”。这将运行js任务并连接所有JS文件并将其存储在dist目录中名为app.js的文件中。在index.html文件中,您始终可以指向这个文件dist / app.js。

答案 1 :(得分:2)

如果将它们添加为脚本文件,它们只能相互识别。最佳做法是在发布之前将目录结构中的所有javascript文件缩小为一个文件。