angularjs |依赖注入优于需要模块

时间:2015-01-14 08:56:12

标签: javascript angularjs angularjs-service

使用依赖注入而不是需要模块的优势是什么?

/* with dependency injection  */
app.controller('testCtrl', function(dep){
    /* use dep... */
});

/* with require  */
app.controller('testCtrl', function(){
    var dep = require('./dep');
    /* use dep... */
});

1 个答案:

答案 0 :(得分:1)

这是两件不同的事情。

需要AMD's解决加载模块的问题,因此您无需加载<script>标记即可加载.js文件。为此,您可以使用requireJs

等库

角度相关性注入是角度加载<{1}},$scope角度模块的东西,但是你有角度的那些需要加载require。

您可以使用AMD在其他文件中加载另一个模块,服务或工厂等其他文件,并且您需要在需要时异步加载此文件,并使用$httpdefine()(请参阅requirejs文档)来加载那些文件。使用 require 加载文件后,您需要使用 angular的DI 来引用它们才能使用它们。

如果没有要求,您需要将require() index.html标记

<script>中的某个文件包含在您的服务中

this是关于在an​​gular中使用requirejs的好文章。

希望这能帮助你澄清一些事情。