AngularJS 简单应用实例


Posted in Javascript onJuly 28, 2016

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编程的朋友。

Javascript 相关文章推荐
开发跨浏览器javascript常见注意事项
Jan 01 Javascript
JQery 渐变图片导航效果代码 漂亮
Jan 01 Javascript
简介AngularJS中使用factory和service的方法
Jun 17 Javascript
初步使用Node连接Mysql数据库
Mar 03 Javascript
浅谈bootstrap源码分析之tab(选项卡)
Jun 06 Javascript
JS简单实现点击复制链接的方法
Aug 03 Javascript
js 将图片连接转换成base64格式的简单实例
Aug 10 Javascript
深入了解JavaScript的逻辑运算符(与、或)
Dec 20 Javascript
通过命令行创建vue项目的方法
Jul 20 Javascript
vue实现购物车加减
May 30 Javascript
基于vue 动态菜单 刷新空白问题的解决
Aug 06 Javascript
vue实现同时设置多个倒计时
May 20 Vue.js
AngularJS 路由详解和简单实例
Jul 28 #Javascript
AngularJS 依赖注入详解和简单实例
Jul 28 #Javascript
AngularJS中实现动画效果的方法
Jul 28 #Javascript
项目实践一图片上传之form表单还是base64前端图片压缩(前端图片压缩)
Jul 28 #Javascript
AngularJS中的包含详细介绍及实现示例
Jul 28 #Javascript
AngularJS Bootstrap详细介绍及实例代码
Jul 28 #Javascript
JavaScript中windows.open()、windows.close()方法详解
Jul 28 #Javascript
You might like
PHP学习之正则表达式
2011/04/17 PHP
关于查看MSSQL 数据库 用户每个表 占用的空间大小
2013/06/21 PHP
一个好用的PHP验证码类实例分享
2013/12/27 PHP
thinkPHP5.0框架命名空间详解
2017/03/18 PHP
PHP编程计算文件或数组中单词出现频率的方法
2017/05/22 PHP
Yii2语言国际化的配置教程
2018/08/19 PHP
jquery图片上下tab切换效果
2011/03/18 Javascript
Extjs表单常见验证小结
2014/03/07 Javascript
JS实现文字链接感应鼠标淡入淡出改变颜色的方法
2015/02/26 Javascript
详解JavaScript表单验证(E-mail 验证)
2016/03/31 Javascript
javascript 用函数实现继承详解
2016/05/28 Javascript
IE下JS保存图片的简单实例
2016/07/15 Javascript
JS函数多个参数默认值指定方法分析
2016/11/28 Javascript
JavaScript程序设计高级算法之动态规划实例分析
2017/11/24 Javascript
angular1.x ui-route传参的三种写法小结
2018/08/31 Javascript
Node.js net模块功能及事件监听用法分析
2019/01/05 Javascript
vue3中轻松实现switch功能组件的全过程
2021/01/07 Vue.js
[01:02]2014 DOTA2国际邀请赛中国区预选赛 现场抢先看
2014/05/22 DOTA
天翼开放平台免费短信验证码接口使用实例
2013/12/18 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
python实现list由于numpy array的转换
2018/04/04 Python
Python使用pymysql从MySQL数据库中读出数据的方法
2018/07/25 Python
pytorch的batch normalize使用详解
2020/01/15 Python
python tkinter GUI绘制,以及点击更新显示图片代码
2020/03/14 Python
python简单利用字典破解zip文件口令
2020/09/07 Python
python如何实时获取tcpdump输出
2020/09/16 Python
html5 跨文档消息传输示例探讨
2013/04/01 HTML / CSS
正隆泰信息技术有限公司上机题
2012/06/14 面试题
竞选班长演讲稿
2013/12/30 职场文书
马云的职业生涯规划之路
2014/01/01 职场文书
幼儿园中秋节活动反思
2014/02/16 职场文书
班级文化建设标语
2014/06/23 职场文书
中队活动总结
2014/08/27 职场文书
个人汇报材料范文
2014/12/30 职场文书
2015年入党积极分子培养考察意见
2015/08/12 职场文书
2016新年问候语大全
2015/11/11 职场文书