1.AngularJS

一个构建动态Web应用程序的结构化框架。

基于JavaScript的MVC框架。(  MVC ---- Model(模型)、View(视图)、Controller(控制器) )

主要作用:

1)简化复杂Web应用的开发难度

a) MVC程序架构,解耦应用逻辑、数据模型和视图

b) 数据绑定

c) 依赖注入

d) Ajax服务

2)提高应用程序的可测试性、可维护性

擅长领域:

1)单页面应用程序Single Page Application(SPA)

2)CRUD程序

下载和使用

官网:http://angularjs.org

中文网:http://www.angularjs.cn

文档:http://docs.angularjs.cn/api

AngularJS的使用:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<meta name="description" content="KunShan Online retailers ">
<title></title> <link rel="stylesheet" href="css/angular-csp.css" />
</head>
<body> <script type="text/javascript" src="js/angular.js" ></script>
</body>
</html>

2.Module:模块

创建方式:angular.module(‘myApp’,[]);

使用模块的好处:

1)保持全局命名空间的清洁;

2)编写测试代码更容易;

3)易于在不同的应用程序之间复用代码。

代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<meta name="description" content="KunShan Online retailers ">
<title></title> <link rel="stylesheet" href="css/angular-csp.css" />
</head>
<body ng-app='myApp'>
<!--
ng-app : Angularjs的模块,也可以理解为AngularJS的作用域
-->
<h3>{{"hello"}}</h3> <script type="text/javascript" src="js/angular.js" ></script>
<script type="text/javascript" src="js/index.js" ></script> </body>
</html>
var app = angular.module('myApp',[]);//创建的模块赋值给app对象

3.Controller和scope

控制器:在AngularJS中控制器是一个函数,用来向视图的作用域添加额外的功能,用来设置作用域的初始状态并添加自定义行为。

控制器的声明:

app.controller(‘controllerName’,function($scope){...}) //app对象是angularJs定义好的模块

控制器的使用:

在需要的地方(html某个标签上)添加ng-controller

使用控制器注意事项:

1)尽可能精简控制器,制作和$scope相关的操作

2)不适合在控制其中执行DOM操作、格式化或数据操作。

控制器的嵌套

控制器之间可以发生嵌套关系,子控制器可以访问父控制器中的属性和方法。

代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
<meta name="description" content="KunShan Online retailers ">
<title></title> <link rel="stylesheet" href="css/angular-csp.css" />
</head>
<body ng-app='myApp' ng-controller='myController'>
<!--
ng-app : angularjs的模块
ng-controller :控制器的使用
-->
<h3>{{"hello"}}</h3>
<button ng-click='add()'>Test</button><!--ng-click:点击事件-->
<h4>{{num}}</h4> <div ng-controller='myController2'><!--myController2嵌套在myController中-->
<button ng-click='add()'>Test,myController2</button>
<span>{{num}}</span>
</div> <script type="text/javascript" src="js/angular.js" ></script>
<script type="text/javascript" src="js/index.js" ></script> </body>
</html>
var app = angular.module('myApp',[]);//创建的模块赋值给app对象

//controller  $scope:作用域对象
app.controller('myController',function($scope){
$scope.num=0;//视图中的num变量 //add方法 视图中的add()
$scope.add=function(){
$scope.num++;
};
}); app.controller('myController2',function($scope){ });

AngularJS-01.AngularJS,Module,Controller,scope的更多相关文章

  1. 33.AngularJS 应用 angular.module定义应用 angular.controller控制应用

    转自:https://www.cnblogs.com/best/tag/Angular/ AngularJS 模块(Module) 定义了 AngularJS 应用. AngularJS 控制器(Co ...

  2. AngularJS中Directive指令系列 - scope属性的使用

    文章是转的,我做下补充.原文地址:https://segmentfault.com/a/1190000002773689 每当一个指令被创建的时候,都会有这样一个选择,是继承自己的父作用域(一般是外部 ...

  3. JavaScript文件中调用AngularJS内部方法或改变$scope变量

    需要在其他JavaScript文件中调用AngularJS内部方法或改变$scope变量,同时还要保持双向数据绑定: 首先获取AngularJS application: 方法一:通过controll ...

  4. 【AngularJS】AngularJS 教程

    AngularJS通过新的属性和表达式扩展了HTML.------------->扩展HTML属性 AngularJS可以构建一个单页面应用程序(SPAs: Single Page Applic ...

  5. Module controller in JMeter

    https://qualibrate.com/blog/quality-assurance/jmeter-module-controller/ 通过组合Test Fragments 和Module C ...

  6. Jmeter(十九)Logic Controllers 之 Module Controller and Include Controller

    Module Controller ---模块控制器 测试计划设置“独立运行没每个线程组” 线程组2中使用Module Controller执行线程组1中的Sampler: 紧接着,将线程组1disa ...

  7. Jmter-Test Fragment、Include Controller和Module Controller

    Test Fragment--测试片段 The Test Fragment is used in conjunction with the Include Controller and Module ...

  8. jmeter的Include Controller控件和Test Fragment控件和Module Controller控件

    1.Include Controller控件——给当前jmeter脚本引入外部片段的jmeter脚本(Test Fragment片段脚本) Include Controller控件——添加外部jmet ...

  9. Jmeter (二十六)逻辑控制器 之 Module Controller and Include Controller

    Module Controller ---模块控制器 测试计划设置“独立运行没每个线程组” 线程组2中使用Module Controller执行线程组1中的Sampler: 紧接着,将线程组1disa ...

随机推荐

  1. 网络共享服务—SAMBA服务

    SAMBA服务简介 SMB:Server Message Block服务器消息块,IBM发布,最早是DOS网络文件共享协议 Cifs:common internet file system,微软基于S ...

  2. 利用csv文件批量编辑更新sql

    历史表(popularity_ranking)数据中只存了用户手机号,业务需求中需要新增用户昵称字段, 这里我们用户表和popularity_ranking表在不同数据库中,有两种方法:1.编写后台服 ...

  3. vuejs是如何编译checkbox数组的v-model的

    随便用官方的例子编译了一下, 发现如下 _c("input", { directives: [ { name: "model", rawName: " ...

  4. SQL优化 | sql执行过长的时间,如何优化?

    1.查看sql是否涉及多表的联表或者子查询,如果有,看是否能进行业务拆分,相关字段冗余或者合并成临时表(业务和算法的优化) 2.涉及链表的查询,是否能进行分表查询,单表查询之后的结果进行字段整合 3. ...

  5. centos中screen的使用

    只是讲解几个简单的操作,例如,创建新窗口,切换到新窗口,删除窗口.(因为我要启动elk,所以需要使用到screen) 一.创建一个新窗口: 安装完成后,直接敲命令screen就可以启动它.但是这样启动 ...

  6. 自定义Camera的setPictureSize拍照完毕出现花屏怎么解决

    Camera.Parameters parameters = mCamera.getParameters();// 获得相机参数 List<Camera.Size> sizes = par ...

  7. JAVA 基础编程练习题31 【程序 31 数组逆序】

    31 [程序 31 数组逆序] 题目:将一个数组逆序输出. 程序分析:用第一个与最后一个交换. package cskaoyan; public class cskaoyan31 { @org.jun ...

  8. supervieord的使用

    用途 守护进程,帮你管理其他进程,让其他进程成为后台进程 监控进程是否死掉,自动重启: 管理进程的启动,停止: 对进程输出的日志进行管理 每个进程使用不同的用户启动,这样可以使进程获得不同用户的权限 ...

  9. Semaphore 并发信号

    package com.thread; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executo ...

  10. flask的jinja2过滤器使用:遍历索引指定标签class属性,实现样式变化

    在flask项目中实现上图效果,采用使用自定义过滤器的形式对 span 标签的 class 指定. 1.定义过滤器 # common.py def do_index_class(index): &qu ...