AngularJS入门示例之Hello World详解


Posted in Javascript onJanuary 04, 2017

本文实例讲述了AngularJS入门示例Hello World。分享给大家供大家参考,具体如下:

以前项目都是使用jQuery和原始的JavaScript,最近参加一个项目需要用到AngularJS、RequireJS等比较潮的框架。这里记录自己的学习过程,虽然冠以原创之名,其实都是参考网上的一些资料,加上自己的一些实践和理解。再没有熟悉AngularJS之前,估计也不出什么高质量的文章,只能算是学习笔记和备忘录。练习使用的版本是1.2.25。

示例代码如下:

<!doctype html>
<html lang="en" ng-app>
  <head>
    <meta charset="utf-8">
    <title>Hello,World!</title>
    <script src="angular1.2.25.js"></script>
  </head>
  <body>
    <input type="text" ng-model="yourName">
      <h1>Hello, {{yourName}}</h1>
  </body>
</html>

用浏览器打开这个网页,在文本框进行输入,发现界面会自动实时显示。如果用javascript或jquery,完成这么一个小功能,我们组要注册监听事件,获取text控件的值,然后将值塞入<h1>中显示。而使用AngularJS,我们需要做的事情是:添加ng-app,添加ng-model,使用{{yourName}}显示。很显然,使用AngularJS要简单的多,而且代码更紧凑。下面我们简单看下这3个东西的意思:

1、ng-app:它可以放在任何dom节点上,代表该结点以及它的所有子节点都在AngularJS的管理范围之内;如果去掉这个标记,发现AngularJS框架不会起效果。

<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>Hello,World!</title>
    <script src="angular1.2.25.js"></script>
  </head>
  <body>
    <div ng-app>
      <input type="text" ng-model="yourName">
      <h1>Hello, {{yourName}}</h1>
    </div>
    <h1>Hello, {{yourName}}</h1>
  </body>
</html>

这次我们把ng-app放到了<div>上,可以看到div内部的<h1>能够实时显示输入的数据,而外部的<h1>没有效果。可以看到,一个html页面可以全部交予AngularJS来管理,也可以只让AngularJS管理页面的一部分,我们可以按需添加ng-app所在的dom节点。

2、ng-model:这个是AngularJS数据的双向绑定特性。简单点理解:告诉AngularJS这是个数据模型,你帮我存到内存中。界面上修改数据,内存中数据也会自动修改;修改内存中的变量值,界面显示也会自动更改。这个特性显然很方便,能够保持数据的一致性,避免我们自己加代码来完成这个功能。

3、{{yourName}}:这个是框架提供的表达式语法,能够显示内存中数据模型的值。这个跟struts2的<s:property>、<s:text>类似,就是用来显示数据的。这种只是AngularJS定义的语法格式,跟JSP页面中的EL表达式,struts2的OGNL很类似,就是一种数据的获取机制。

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
JavaScript创建一个欢迎cookie弹出窗实现代码
Mar 15 Javascript
JS 去前后空格大全(IE9亲测)
Jul 15 Javascript
JS 实现点击a标签的时候让其背景更换
Oct 15 Javascript
jQuery查看选中对象HTML代码的方法
Jun 17 Javascript
angularjs 表单密码验证自定义指令实现代码
Oct 27 Javascript
jQuery中的select操作详解
Nov 29 Javascript
用file标签实现多图文件上传预览
Feb 14 Javascript
详解Vue-基本标签和自定义控件
Mar 24 Javascript
JavaScript使用readAsDataUrl方法预览图片
May 10 Javascript
vue实现同一个页面可以有多个router-view的方法
Sep 20 Javascript
Node.js + express实现上传大文件的方法分析【图片、文本文件】
Mar 14 Javascript
使用typescript快速开发一个cli的实现示例
Dec 09 Javascript
详解AngularJS验证、过滤器、指令
Jan 04 #Javascript
Bootstrap3 图片(响应式图片&amp;图片形状)
Jan 04 #Javascript
javascript 注释代码的几种方法总结
Jan 04 #Javascript
JS数组返回去重后数据的方法解析
Jan 03 #Javascript
js实现复选框的全选和取消全选效果
Jan 03 #Javascript
使用base64对图片的二进制进行编码并用ajax进行显示
Jan 03 #Javascript
BootStrap学习笔记之nav导航栏和面包屑导航
Jan 03 #Javascript
You might like
解析thinkphp中的M()与D()方法的区别
2013/06/22 PHP
PHP 实现字符串翻转(包含中文汉字)的实现代码
2017/04/01 PHP
thinkPHP微信分享接口JSSDK用法实例
2017/07/07 PHP
ThinkPHP5.0框架实现切换数据库的方法分析
2019/10/30 PHP
Display SQL Server Login Mode
2007/06/21 Javascript
jquery 单引号和双引号的区别及使用注意
2013/07/31 Javascript
jqGrid日期格式的判断示例代码(开始日期与结束日期)
2013/11/08 Javascript
jQuery实现回车键(Enter)切换文本框焦点的代码实例
2014/05/05 Javascript
JS是按值传递还是按引用传递
2015/01/30 Javascript
AngularJS的内置过滤器详解
2015/05/14 Javascript
封装属于自己的JS组件
2016/01/27 Javascript
Angular 根据 service 的状态更新 directive
2016/04/03 Javascript
使用jquery给指定的table动态添加一行、删除一行
2016/10/13 Javascript
深入理解Node.js 事件循环和回调函数
2016/11/02 Javascript
Bootstrap简单表单显示学习笔记
2016/11/15 Javascript
javascript实现文字无缝滚动
2016/12/27 Javascript
浅谈javascript中的事件冒泡和事件捕获
2016/12/28 Javascript
Angular实现点击按钮后在上方显示输入内容的方法
2017/12/27 Javascript
nodejs用gulp管理前端文件方法
2018/06/24 NodeJs
Node.js+ELK日志规范的实现
2019/05/23 Javascript
JavaScript实现表单验证功能
2020/12/09 Javascript
vue中如何添加百度统计代码
2020/12/19 Vue.js
python list排序的两种方法及实例讲解
2017/03/20 Python
Python 中的Selenium异常处理实例代码
2018/05/03 Python
python使用ddt过程中遇到的问题及解决方案【推荐】
2018/10/29 Python
python离线安装外部依赖包的实现
2020/02/13 Python
基于python计算滚动方差(标准差)talib和pd.rolling函数差异详解
2020/06/08 Python
CSS3 clip-path 用法介绍详解
2018/03/01 HTML / CSS
离婚协议书应该怎么写
2014/10/12 职场文书
我们的节日元宵节活动总结
2015/02/06 职场文书
商场营业员岗位职责
2015/04/14 职场文书
生产车间管理制度
2015/08/04 职场文书
2016年社区服务活动总结
2016/04/06 职场文书
七年级作文之下雨天
2019/12/23 职场文书
导游词之寿县报恩寺
2020/01/19 职场文书
详解python的异常捕获
2022/03/03 Python