<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="Scripts/angular.min.js" ></script> </head> <body> <!--Scope简单使用--> <div ng-app="myProgram" ng-controller="myCtrl"> <h1>{{heroName}}</h1> </div> <script> var app = angular.module('myProgram',[]); app.controller('myCtrl',function ($scope) { $scope.heroName = "疾风剑豪 亚索"; }); </script> </body> </html>
结果
@H_404_0@
页面显示了初始结果 @H_404_0@ @H_404_0@ @H_404_0@如上,JS中通过$scope获取到了html对象,然后$scope.heroName取到属性进行赋值。 @H_404_0@ @H_404_0@ @H_404_0@angularJS的组成主要为M,V,C, @H_404_0@它们是: @H_404_0@View,视图,用于展示和接收数据的,即html页面; @H_404_0@Model,模型,视图中的数据; @H_404_0@Controller,控制器,javascript函数,用户对视图的数据或者属性进行修改,展示和接收不同的交互结果。 @H_404_0@scope 我们可以理解为是一个 JavaScript 对象,带有属性和方法,这些属性和方法可以在视图和控制器中使用。 @H_404_0@比如 @H_404_0@<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="Scripts/angular.min.js" ></script> </head> <body> <!--Scope简单使用--> <div ng-app="myProgram" ng-controller="myCtrl"> <input ng-model="heroName"> <h1>我最爱使用的英雄是 {{heroName}}</h1> </div> <script> var app = angular.module('myProgram',[]); app.controller('myCtrl',function ($scope) { $scope.heroName = "德邦总管 赵信"; }); </script> </body> </html>结果 @H_404_0@ @H_404_0@ @H_404_0@输入框的内容修改后,显示的内容也会跟着修改。这就是常用的视图数据更新后,模型和控制器的数据也要更新。 @H_404_0@ @H_404_0@
Scope 作用范围
@H_404_0@
scope 有自己的作用域,在复杂的项目中,DOM有很多作用域,我们来看看scope的作用域。 @H_404_0@<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="Scripts/angular.min.js" ></script> </head> <body> <!--作用域--> <div ng-app="myProgram" ng-controller="myCtrl"> <ul> <li ng-repeat="x in names">{{x}}</li> </ul> </div> <script> var app = angular.module('myProgram',[]); app.controller('myCtrl',function ($scope) { $scope.names = ["英雄联盟","王者荣耀","穿越火线"]; }); </script> </body> </html>结果 @H_404_0@ @H_404_0@使用ng-repeat循环数组内的每一个值,每个重复项都访问了当前的重复对象: @H_404_0@每个 <li> 元素可以访问当前的重复对象,这里对应的是一个字符串, 并使用变量 x 表示。 @H_404_0@ @H_404_0@ @H_404_0@ 根作用域 @H_404_0@所谓根作用域,是指在整个页面中有一个总的scope,叫做$rootScope,它能获取所有html元素,能获得各个scope,使用根作用域来在各controller中进行数据交换。 @H_404_0@
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="Scripts/angular.min.js" ></script> </head> <body> <!--根作用域--> <div ng-app="myProgram" ng-controller="myCtrl"> <h1>{{heroName}} 英雄列表:</h1> <ul> <li ng-repeat="x in names">{{x}} {{heroName}}</li></ul> </div> <script> var app = angular.module('myProgram',function ($scope,$rootScope) { $scope.names = ["时间刺客","皮城法警","迅捷斥候"]; $rootScope.heroName = "英雄联盟 "; }); </script> </body> </html>效果 @H_404_0@ @H_404_0@$rootScope 作为参数传递,可在应用中使用。 @H_404_0@ @H_404_0@本文代码: http://download.csdn.net/detail/yysyangyangyangshan/9699263