AngularJs  Understanding Angular Templates


Posted in Javascript onSeptember 02, 2016

angular template是一个声明规范,与model、controller的信息一起,渲染成用户在浏览器中所看到的视图。它是静态的DOM,包括HTML、CSS、angular特别的元素和angular指定的元素属性。angular元素和属性指示angular去扩展行为以及将template DOM转换为动态视图的DOM。

下面是我们可以在template中使用的angular元素已经元素属性的类型:

  1. Directive(https://3water.com/article/91739.htm) - 一个扩展现有DOM元素或者代表一个可复用的DOM组件的属性或者元素,即控件。
  2. Markup(http://code.angularjs.org/1.0.2/docs/api/ng.$interpolate) - 通过双大括号表示法{{}}来绑定表达式到元素中,是内建的angular标记。
  3. Filter(http://code.angularjs.org/1.0.2/docs/guide/dev_guide.templates.filters)- 用于格式化我们给用户看的数据。
  4. Form controls (https://3water.com/article/91744.htm)- 让我们验证用户输入。

注意:除了可以在模版中声明上面的元素以外,我们也可以在javascript代码中访问这些元素。

下面的代码片段,展示了一个简单的angular template,它由标准的HTML标签以及angular directive、花括号绑定的expression({{expression}},https://3water.com/article/91742.htm)组成。

<!DOCTYPE html>
<!--ng-app,定义应用范围,在这里创建root scop-->
<html ng-app>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/>
 <title>template</title>
 <meta content="IE=edge,chrome=1" http-equiv="X-UA-Compatible">
 <style type="text/css">
 .ng-cloak {
  display: none;
 }
 </style>
</head>
<!--
 ng-cloak,在编译后会去掉的class
 ng-controller,一个directive,用于指定当前的模版对应的Controller为MyController
-->
<body class="ng-cloak" ng-controller="MyController">

<!--
 ng-model,directive,用于指定input的值对应的model为foo。
-->
<input type="text" ng-model="foo" value=""/>
<!--
 ng-click,directive,单击后需要做的事情,可以是expression,如 buttonText = '1';
 也可以是调用函数,如下面所示。
 {{buttonText}},用于展示当前scope链中能够或得到的buttonText的值
-->
<button ng-click="changeFoo()">{{buttonText}}</button>

<script src="../angular-1.0.1.js" type="text/javascript"></script>
<script type="text/javascript">
 function MyController($scope) {
 $scope.buttonText = "默认的东东";//初始化model buttonText
 $scope.foo = "修改我吧";//初始化model foo
 $scope.changeFoo = function() {//声明changeFoo
  this.buttonText = this.foo;//将foo的值赋给buttonText
  //这里使用的this,就是指向当前$scope的。
 };
 }
</script>
</body>
</html>

在一个简单的单页应用中,模版由HTML、CSS以及angular directive组成,都包含在一个HTML文件中(通常叫它index.html)。但在一些更加复杂的应用中,我们可以在一个页面中,通过使用“partials”来显示多个视图,即将模版分段存放在独立的HTML文件中。我们可以在主页面中使用$route服务(http://code.angularjs.org/1.0.2/docs/api/ng.$route)与ngView directive(http://code.angularjs.org/1.0.2/docs/api/ng.directive:ngView)来协同“include”那些partials。这个技术的一个例子,展示在angular tutorial(http://code.angularjs.org/1.0.2/docs/tutorial/index)的第七、八步骤中。(这部分我稍后再玩-_-!)

以上就是对 AngularJs Understanding Angular Templates的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

Javascript 相关文章推荐
javascript 动态table添加colspan\rowspan 参数的方法
Jul 25 Javascript
input的focus方法使用
Mar 13 Javascript
js添加select下默认的option的value和text的方法
Oct 19 Javascript
jQuery+PHP实现动态数字展示特效
Mar 14 Javascript
JS代码实现根据时间变换页面背景效果
Jun 16 Javascript
Vue实现动态显示textarea剩余字数
May 22 Javascript
JavaScript实现设置默认日期范围为最近40天的方法分析
Jul 12 Javascript
VueJs使用Amaze ui调整列表和内容页面
Nov 30 Javascript
js最简单的双向绑定实例讲解
Jan 02 Javascript
详解Vue 全局变量,局部变量
Apr 17 Javascript
vue中axios实现数据交互与跨域问题
May 12 Javascript
简单了解Ajax表单序列化的实现方法
Jun 14 Javascript
jquery 中toggle的2种用法详解(推荐)
Sep 02 #Javascript
浅谈JS中的三种字符串连接方式及其性能比较
Sep 02 #Javascript
AngularJs  E2E Testing 详解
Sep 02 #Javascript
解决node.js安装包失败的几种方法
Sep 02 #Javascript
js两种拼接字符串的简单方法(必看)
Sep 02 #Javascript
AngularJs Understanding the Controller Component
Sep 02 #Javascript
JS 拼凑字符串的简单实例
Sep 02 #Javascript
You might like
PHP 使用MySQL管理Session的回调函数详解
2013/06/21 PHP
PHP+JS三级菜单联动菜单实现方法
2016/02/24 PHP
Javascript String对象扩展HTML编码和解码的方法
2009/06/02 Javascript
一起来写段JS drag拖动代码
2010/12/09 Javascript
在jquery boxy中添加百度地图坐标拾取注意流程
2014/04/03 Javascript
深入理解JavaScript系列(50):Function模式(下篇)
2015/03/04 Javascript
js字符串操作方法实例分析
2015/05/06 Javascript
网页收藏夹显示ICO图标(代码少)
2015/08/04 Javascript
javascript HTML+CSS实现经典橙色导航菜单
2016/02/16 Javascript
jQuery简单实现tab选项卡切换效果
2016/06/20 Javascript
js控制文本框只能输入中文、英文、数字与指定特殊符号的实现代码
2016/09/09 Javascript
Vue.js实战之组件之间的数据传递
2017/04/01 Javascript
angular动态删除ng-repaeat添加的dom节点的方法
2017/07/20 Javascript
基于daterangepicker日历插件使用参数注意的问题
2017/08/10 Javascript
Node.js中环境变量process.env的一些事详解
2017/10/26 Javascript
Vue实战之vue登录验证的实现代码
2017/10/31 Javascript
JS实现的input选择图片本地预览功能示例
2018/08/29 Javascript
vue-resourc发起异步请求的方法
2020/02/11 Javascript
vue-cli 关闭热更新操作
2020/09/18 Javascript
python使用webbrowser浏览指定url的方法
2015/04/04 Python
Python数据分析之双色球基于线性回归算法预测下期中奖结果示例
2018/02/08 Python
使用Python搭建虚拟环境的配置方法
2018/02/28 Python
对Python中数组的几种使用方法总结
2018/06/28 Python
pycharm重置设置,恢复默认设置的方法
2018/10/22 Python
python多线程+代理池爬取天天基金网、股票数据过程解析
2019/08/13 Python
python爬虫模拟浏览器的两种方法实例分析
2019/12/09 Python
基于Python的身份证验证识别和数据处理详解
2020/11/14 Python
英国Office鞋店德国网站:在线购买鞋子、靴子和运动鞋
2018/12/19 全球购物
意大利比基尼品牌:MISS BIKINI
2019/11/02 全球购物
亚马逊加拿大网站:Amazon.ca
2020/01/06 全球购物
工商管理专业学生的自我评价
2013/10/01 职场文书
党员三严三实心得体会
2014/10/13 职场文书
会计工作态度自我评价
2015/03/06 职场文书
2015年市场部工作总结
2015/04/30 职场文书
2015年秋季开学典礼校长致辞
2015/07/16 职场文书
把77A收信机改造成收音机
2022/04/05 无线电