Angularjs模块和依赖的简单含义

时间:2015-09-24 11:16:15

标签: javascript angularjs

您好我是angularjs的新手

var app = angular.module('app', [])
app.controller('ProductController', ['$scope,$htttp', productController]);

如果我错了,请纠正我

以上两行说我们已经创建了模块名称app 我们有一个叫做productController的控制器,并且有$ scope,$ http作为依赖。 App是我们angularjs应用程序的起点。 控制器基本上用于业务逻辑。 什么是服务,工厂? 什么是依赖注入简单的单词? 当我研究angualar.js时,我想更清楚地理解它。但无法清楚地理解它。

请帮助我对此进行一些简单的了解

1 个答案:

答案 0 :(得分:0)

angular.module创建应用程序模块,应用程序可以是一个或多个模块。这是模块化的。所以如果你想初始化核心模块。然后你必须

var app=angular.module("core.module", [
      /* Shared Modules */
        "services",
        "widgets",
        "layout"])

它的作用是为应用程序初始化每个模块。通过使用app对象,您可以直接为所有模块创建通用指令等等。

core.module is behaves like constructor and what you want to initialize will pass in "[]" during the call of constructor. it's up-to you. 

您可以将其称为依赖项。

在每个模块中,您可以拥有不同的控制器,但每当您在html中添加脚本文件引用时,请务必记住一件事,然后先添加子模块然后再添加内核,否则会产生错误。模块未定义。

服务和工厂几乎都是等价的。最重要的是要意识到两者都是单身。

工厂是返回对象的函数,而服务是使用new关键字实例化的对象的构造函数。

服务:

angular.module('app').service('abcservice', function() {
    this.getdata= function() {};
});

工厂:

 angular.module('app').factory('TestFactory', function() {
    return {
        someFunction: function() {}
    };
});

当你想在我们的应用程序中使用服务和工厂时,你必须在控制器声明中将它作为参数/依赖项传递。

 app.controller(controllerId, ['$scope','abcservice','TestFactory']);

请参阅Angular Tutorial