AngularJS —— 使用模块组织你的代码 【已翻译100%】(3/3)

简介:

输出被使用Angular指令来创建

不过,它使用了一种特殊的方式创建那个输出,它使用了两种Angular指令:

{{mc.name}}

ng-repeat

第一个指令被关联到了Div那一行上面MainCtrl的声明和引用. 我们告诉Angular,说我们想以mc这个名称引用我们的MainCtrl函数(对象)。那就是Angular提供的一个很棒的缩写功能.

现在,因为我们将一个属性放到了MainCtrl的this对象上,我们现在就可以通过mc和属性的名称来引用那些东西了。我们将那些东西包含特殊的双大括号{{ }}里面,如此Angular编译器就懂得那是可以运行的代码,你就会瞧见Angular将其转换成了HTML:

<p>Hello {{mc.name}}!</p>

编程了下面这一:

Hello MainCtrl!

之后,我们设置了一个漂亮的无需列表,并使用了ng-repeat指令来迭代输出数组中的每一行.

然后Angular跌倒了整个allThings数组,并将其装换成了下面的HTML

{{a}}
变成了如下的输出
1. first
2. second
3. third

就那么简单。这就是模块化的所有东西,我们的值再也不会被任何人动手动脚了.

SecondCtrl : 几乎就是同样的东西

这里有SecondCtrl的代码. 代码机会就是一样的,除了我们获取我满原来的app模块处有点不一样——不是第一次创建它了.

(function() {

  var app = angular.module(&apos;mainApp&apos;);

  app.controller(&apos;SecondCtrl&apos;, function() {
    console.log("in SecondCtrl...");
    // vt = virtual this - just shorthand
    vt = this;
    vt.name = &apos;SecondCtrl&apos;;
    vt.allThings = ["bacon", "lettuce", "tomato"];

  });
})();

仔细看看下面这一行:

var app = angular.module(&apos;mainApp&apos;);

唯一的不同就是我们没有提供引用数组.

那是因为mainApp已经是存在了的,而我们只是想向其添加另外一个新模块 (SecondCtrl) .

总结:最佳实践

所有其它的脚本中的代码,以及HTML基本上是一样的,而此处最重要的是所有的代码都被模块化了,数据也被封装了起来,以便更好的组织我们的代码. 这是Google软件开发者遵循的一个最佳实践,也是我们应该遵循的。请学习他,运用它,并与它同在吧(阿门).

相关文章
|
11月前
|
缓存 前端开发 JavaScript
「前端架构」Angular的13个主要好处和用例
「前端架构」Angular的13个主要好处和用例
|
JavaScript 前端开发 开发者
前端必知词汇:AngularJS
AngularJS是一个开发动态Web应用的框架,同时也是一个用 JavaScript 编写的库。它可以通过 script 标签添加到网页中,让用户可以使用HTML作为模板语言并且可以通过扩展的HTML语法来使应用组件更加清晰和简洁。自2009年,由Misko Hevery 等人创建,后为Google所收购。目前已经被用于Google的多款产品当中。
440 0
|
JavaScript 测试技术 前端开发
实例解说AngularJS在自动化测试中的应用
本文通过实例介绍AngularJS在自动化测试中的应用。
|
JavaScript 容器 数据挖掘
Angularjs 与三方js插件配合使用,并通过模板动态解析angularjs 语法
在一个静态见面上做数据分析,由于前后端分离 前端使用Angularjs框架,后端使用RESTFUL,如图
2657 0
|
Web App开发 前端开发 JavaScript