Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/470.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJs加载依赖文件_Javascript_Angularjs - Fatal编程技术网

Javascript AngularJs加载依赖文件

Javascript AngularJs加载依赖文件,javascript,angularjs,Javascript,Angularjs,我正在学习AngularJS,在我经常看到的所有教程和屏幕广播中,我都使用AngularJS在一个独特的文件、示例指令、控制器、工厂等中编写代码 从逻辑上讲,对于大型应用程序,您将拆分代码,使其在多个文件中保持可维护性和灵活性,而且我们还应该注意需要多少标记才能让JavaScript文件正确运行 我想知道在需要时,需要文件,在我看来导入更少的javascript文件,哪种做法是最好的。我查看了RequireJs,但使用它似乎有点复杂。是否有更高效、更易于使用的工具?或者有什么好的资源可以开始 一

我正在学习AngularJS,在我经常看到的所有教程和屏幕广播中,我都使用AngularJS在一个独特的文件、示例指令、控制器、工厂等中编写代码

从逻辑上讲,对于大型应用程序,您将拆分代码,使其在多个文件中保持可维护性和灵活性,而且我们还应该注意需要多少标记才能让JavaScript文件正确运行

我想知道在需要时,
需要文件
,在我看来导入更少的javascript文件,哪种做法是最好的。我查看了RequireJs,但使用它似乎有点复杂。是否有更高效、更易于使用的工具?或者有什么好的资源可以开始

一个小例子是,我有一种插件,它是使用指令、控制器和工厂构建的:

app-|
    --Controllers
         |_ pluginController.js

    --Directives
         |_ pluginDirective.js

    --Factories
         |_ pluginFactory.js  

不需要全部三个文件,你如何让它工作

我建议您阅读Angular文档中的依赖注入。这完全取决于你如何诚实地安排事情。如果您希望在控制器中使用服务/工厂,则可以将工厂作为依赖项添加到控制器或指令中。见下例:

Angular.module('{YOUR MODULE NAME}').controller('{YOUR CONTORLLER NAME}', ['$scope', '{FACTORY NAME}',
function($scope,{FACTORY NAME}) {
}]


要在控制器内调用该指令,只需将该指令添加到控制器模板中即可。这是一个基本示例,要了解更多有关依赖注入的信息,请阅读Voke,这是一个关于如何同时使用RequireJS和AngularJS的很好示例。这是一个有角度的种子项目的分支,希望它能为你指明正确的方向。它附带了刚出炉的RequireJS。我绝对推荐学习要求

为了明确我的理解-例如,我想使用“angularFileUpload”模块,我需要将其添加到我的模块依赖项列表中-

棱角的 .module('kids',['angularFileUpload' ])

然后加载脚本

<script src="angularjs/plugins/angular-file-upload/angular-file-upload.min.js" type="text/javascript"></script>


谢谢您的帮助。

关于您的文件结构和命名约定,请参阅:为什么不要求所有3个文件?@apairet非常感谢,非常感谢:)35; Hugo不是我要问的问题,无论如何,谢谢,因为加载文件意味着向服务器发送更多http请求,依赖项注入机制仍然要求加载所有文件,否则注入程序将无法找到模块和组件。这对OP没有帮助。这绝对是一个很好的资源,非常感谢!但是应该比requirejs更快,因为我认为,使用requirejs意味着在requirejs之上创建应用程序的结构。如果将其移出,应用程序将无法工作。有道理?