欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

AngularJS 简单应用实例

程序员文章站 2022-04-09 17:08:43
angularjs 应用 现在是时候创建一个真正的 angularjs 单页 web 应用(single page web application,spa)了。...

angularjs 应用

现在是时候创建一个真正的 angularjs 单页 web 应用(single page web application,spa)了。

angularjs 应用实例

您已经学习了足够多关于 angularjs 的知识,现在可以开始创建您的第一个 angularjs 应用程序:

我的笔记

 

 

剩余字数: 100

应用程序讲解

angularjs 实例

<!doctype html>
<html>
<head>
<meta charset="utf-8">
<script src="http://apps.bdimg.com/libs/angular.js/1.4.6/angular.min.js"></script>
</head>
<body ng-app="mynoteapp" ng-controller="mynotectrl">

<h2>我的笔记</h2>


<textarea ng-model="message" cols="40" rows="10"></textarea>

<p>
<button ng-click="save()">保存</button>
<button ng-click="clear()">清除</button>
</p>

<p>剩余字数: <span ng-bind="left()"></span></p>

<script src="mynoteapp.js"></script>
<script src="mynotectrl.js"></script>

</body>
</html>

运行结果:

我的笔记

 

剩余字数: 100

应用程序文件 "mynoteapp.js":

var app = angular.module("mynoteapp", []);

控制器文件 "mynotectrl.js":

app.controller("mynotectrl", function($scope) {
 $scope.message = "";
 $scope.left = function() {return 100 - $scope.message.length;};
 $scope.clear = function() {$scope.message = "";};
 $scope.save = function() {alert("note saved");};
});

<html> 元素是 angularjs 应用: ng-app="mynoteapp" 的容器:

<html ng-app="mynoteapp">

<div> 是 html 页面中控制器: ng-controller="mynotectrl" 的作用域:

<div ng-controller="mynotectrl">

ng-model 指令绑定了 <textarea> 到控制器变量 message:

<textarea ng-model="message" cols="40" rows="10"></textarea>

两个 ng-click 事件调用了控制器函数 clear() 和 save():

<button ng-click="save()">save</button>

<button ng-click="clear()">clear</button>

ng-bind 指令绑定控制器函数 left() 到<span> ,用于显示剩余字符:

number of characters left: <span ng-bind="left()"></span>

应用库文件需要在 angularjs 加载后才能执行:

<script src="mynoteapp.js"></script>
<script src="mynotectrl.js"></script>


angularjs 应用架构

以上实例是一个完整的 angularjs 单页web应用(single page web application,spa)。

<html> 元素包含了 angularjs 应用 (ng-app=)。

<div> 元素定义了 angularjs 控制器的作用域 (ng-controller=)。

在一个应用可以由很多控制器。

应用文件(my...app.js) 定义了应用模型代码。

一个或多个控制器文件 (my...ctrl.js) 定义了控制器代码。

总结 - 它是如何工作的呢?

ng-app 指令位于应用的根元素下。

对于单页web应用(single page web application,spa),应用的根通常为 <html> 元素。

一个或多个 ng-controller 指令定义了应用的控制器。每个控制器有他自己的作用域:: 定义的 html 元素。

angularjs 在 html domcontentloaded 事件中自动开始。如果找到 ng-app 指令 , angularjs 载入指令中的模块,并将 ng-app 作为应用的根进行编译。

应用的根可以是整个页面,或者页面的一小部分,如果是一小部分会更快编译和执行。

以上就是对angularjs简单应用详解,希望能帮助angularjs编程的朋友。