AngularJS入门学习(一、初步了解以及常用举例)

AngularJS,由Google收购并发展的前端框架,强调MVC模式、双向数据绑定等特性,简化DOM操作,提升Web应用测试性。本文解析AngularJS核心概念,如依赖注入与模块化设计,并展示常见指令的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

AngularJS简介

AngularJS 诞生于2009年,由Misko Hevery 等人创建,后为Google所收购。是一款优秀的前端JS框架,已经被用于Google的多款产品当中。AngularJS有着诸多特性,最为核心的是:MVC、模块化、自动化双向数据绑定、依赖注入等等。

AngularJS四大特征

  • MVC模式:Angular遵循软件工程的MVC模式,并鼓励展现,数据,和逻辑组件之间的松耦合.通过依赖注入(dependency injection),Angular为客户端的Web应用带来了传统服务端的服务,例如独立于视图的控制。 因此,后端减少了许多负担,产生了更轻的Web应用。
  • 双向绑定:AngularJS是建立在这样的信念上的:即声明式编程应该用于构建用户界面以及编写软件构建,而指令式编程非常适合来表示业务逻辑。框架采用并扩展了传统HTML,通过双向的数据绑定来适应动态内容,双向的数据绑定允许模型和视图之间的自动同步。因此,AngularJS使得对DOM的操作不再重要并提升了可测试性。
  • 依赖注入:依赖注入(Dependency Injection,简称DI)是一种设计模式, 指某个对象依赖的其他对象无需手工创建,只需要“吼一嗓子”,则此对象在创建时,其依赖的对象由框架来自动创建并注入进来,其实就是最少知识法则;模块中所有的service和provider两类对象,都可以根据形参名称实现DI.
  • 模块化设计:高内聚低耦合法则

常用指令

  • 表达式:{{表达式 }} ,表达式可以是变量或是运算式
  • ng-app 指令:告诉子元素一下的指令是归angularJs的,angularJs会识别的,同时网页加载完毕时会自动引导(自动初始化)应用程序。
  • ng-model 指令:绑定变量
  • ng-init指令:初始化指令
  • ng-controller指令:指定所使用的控制器
  • ng-click指令:单击事件指令,再点击时触发控制器的某个方法
  • ng-repeat指令:循环数组变量
  • $http指令:通过服务器获取数据

$scope

scope的使用贯穿整个AngularJSApp应用,它与数据模型相关联,同时也是表达式执行的上下文.有了scope 的使用贯穿整个 AngularJS App 应用,它与数据模型相关联,同时也是表达式执行的上下文.有了scope使穿AngularJSApp,,.scope 就在视图和控制器之间建立了一个通道,基于作用域视图在修改数据时会立刻更新 scope,同样的scope,同样的scope,scope 发生改变时也会立刻重新渲染视图.

例子

<html>
<head>
	<title>入门案例</title>
	<script src="angular.min.js"></script>
	
<script>
		var app=angular.module("myApp",[]);
		app.controller("myController",function($scope,$http){
			
			$scope.add=function(){
				$scope.z = parseInt($scope.x) + parseInt($scope.y);
			}
			
			$scope.list=[
				{name:'张三',shuxue:100,yuwen:100},
				{name:'李四',shuxue:30,yuwen:20},
				{name:'王五',shuxue:50,yuwen:40}
			];
			
			$scope.findAll=function(){
				$http.get('data.json').success(
					function(response){
						$scope.list=response;
					}					
				);				
			}
		});
	</script>
		
</head>


<body ng-app="myApp" ng-controller="myController" ng-init="findAll()">

第一个数:<input ng-model="x"> 第二个数:<input ng-model="y"> <button ng-click="add()">计算</button>
结果为:{{z}}

<table>
<tr>
	<td>姓名</td>
	<td>数学</td>
	<td>语文</td>
</tr>
<tr ng-repeat="entity in list">
	<td>{{entity.name}}</td>
	<td>{{entity.shuxue}}</td>
	<td>{{entity.yuwen}}</td>
</tr>
	</table>
</body>
</html>
  • 以上分别演示了几种,下面分别对应解释
  • $scope.z = parseInt($scope.x) + parseInt($scope.y);这里就是一个双向绑定,绑定输入框中的值<input ng-model="x">,这里使用的指令是“ng-model”这样就可以绑定,然后计算,同时<button ng-click="add()">按钮也使用了单击事件
  • $scope.list是将数据存放一个list集合,这里使用的是json格式哦,同时,页面使用ng-repeat="entity in list"指令来获取
  • $http.get('data.json')这里的$http是从服务器上获取数据,需要有个tomcat之类的服务器哦,返回的数据也是json格式,所以我们可以直接 $scope.list=response;就将json数据直接存放进数组,然后输出显示
  • 页面显示都是{{表达式}}的格式哦

切记

一定要引入所需要的js文件哦,不然写再多都是没有用的哦

总结

以上代码也只是一个简单的实例,建议还是看看源码,然后多尝试练习下

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值