2019独角兽企业重金招聘Python工程师标准>>>
根据Code School的视频完成简单angularjs1的实例
首先完成一个小实例,目的是了解表达式可以进行赋值
<!DOCTYPE html>
<html ng-app="store">
<head>
<meta charset="utf-8">
<script src="../lib/angular.min.js"></script>
<script type="text/javascript" src="../js/app4.js"></script>
<link rel="stylesheet" type="text/css" href="../lib/bootstrap.min.css">
</head>
<body ng-controller="StoreController as store">
<section>
<ul class="nav nav-pills">
<!-- ng-click对Tab进行了赋值 -->
<li><a href="" ng-click="tab = 1">Description</a></li>
<li><a href="" ng-click="tab = 2">Specifications</a></li>
<li><a href="" ng-click="tab = 3">Reviews</a></li>
</ul>
</section>
<!-- 只要在controller区域内肉可以使用{{}}表达式显示tab -->
{{tab}}
</body>
</html>
|
(function(){
var app = angular.module('store',[]);
app.controller('StoreController',function(){
});
})();
|
接下来要进行显示div,js文件不用修改
<!DOCTYPE html>
<html ng-app="store">
<head>
<meta charset="utf-8">
<script src="../lib/angular.min.js"></script>
<script type="text/javascript" src="../js/app4.js"></script>
<link rel="stylesheet" type="text/css" href="../lib/bootstrap.min.css">
</head>
<body ng-controller="StoreController as store">
<!-- 设置初始值让Tab=1,显示第一div,可以先试一下不写ng-init,最后再加上 -->
<section ng-init="tab = 1">
<ul class="nav nav-pills">
<!-- ng-click对Tab进行了赋值,ng-class为li增加了高亮显示,目的是让整个列表项显得更加好看 -->
<li ng-class="{active:tab === 1}"><a href="" ng-click="tab = 1">Description</a></li>
<li ng-class="{active:tab === 2}"><a href="" ng-click="tab = 2">Specifications</a></li>
<li ng-class="{active:tab === 3}"><a href="" ng-click="tab = 3">Reviews</a></li>
</ul>
</section>
<!-- 通过===判断是否显示div -->
<div class="panel" ng-show="tab === 1">
<h4>Description</h4>
<blockquote>None yet</blockquote>
</div>
<div class="panel" ng-show="tab === 2">
<h4>Specifications</h4>
<blockquote>None yet</blockquote>
</div>
<div class="panel" ng-show="tab === 3">
<h4>Reviews</h4>
<blockquote>None yet</blockquote>
</div>
</body>
</html>
|
将逻辑抽象成方法,放到PanelController中
<!DOCTYPE html>
<html ng-app="store">
<head>
<meta charset="utf-8">
<script src="../lib/angular.min.js"></script>
<script type="text/javascript" src="../js/app4.js"></script>
<link rel="stylesheet" type="text/css" href="../lib/bootstrap.min.css">
</head>
<body>
<!-- 设置初始值让Tab=1,显示第一div,可以先试一下不写ng-init,最后再加上 -->
<section ng-controller="PanelController as panel">
<ul class="nav nav-pills">
<!-- ng-click对Tab进行了赋值,ng-class为li增加了高亮显示,目的是让整个列表项显得更加好看 -->
<li ng-class="{active:panel.isSelected(1)}"><a href="" ng-click="panel.selectTab(1)">Description</a></li>
<li ng-class="{active:panel.isSelected(2)}"><a href="" ng-click="panel.selectTab(2)">Specifications</a></li>
<li ng-class="{active:panel.isSelected(3)}"><a href="" ng-click="panel.selectTab(3)">Reviews</a></li>
</ul>
<!-- 通过===判断是否显示div -->
<div class="panel" ng-show="panel.isSelected(1)">
<h4>Description</h4>
<blockquote>None yet</blockquote>
</div>
<div class="panel" ng-show="panel.isSelected(2)">
<h4>Specifications</h4>
<blockquote>None yet</blockquote>
</div>
<div class="panel" ng-show="panel.isSelected(3)">
<h4>Reviews</h4>
<blockquote>None yet</blockquote>
</div>
</section>
</body>
</html>
|
(function(){
var app = angular.module('store',[]);
app.controller('PanelController', function(){
/*tab的初始值,不再使用ng-init进行设定,根据视频中说ng-init仅用于测试*/
this.tab = 1;
/*对tab进行设定*/
this.selectTab = function(setTab){
this.tab = setTab;
}
/*判断是否是和设定的值是相等的*/
this.isSelected = function(checkTab){
return this.tab === checkTab;
}
})
})();
|
转载于:https://my.oschina.net/u/3696747/blog/1590874
angularjs入门(四)相关推荐
- WPF入门(四)-线形区域Path内容填充之填充图(ImageBrush)
WPF入门(四)->线形区域Path内容填充之填充图(ImageBrush) 原文:WPF入门(四)->线形区域Path内容填充之填充图(ImageBrush) 前面我们提到了Linear ...
- 文本分类入门(四)训练Part 1
文本分类入门(四)训练Part 1 训练,顾名思义,就是training(汗,这解释),简单的说就是让计算机从给定的一堆文档中自己学习分类的规则(如果学不对的话,还要,打屁屁?). 开始训练之前,再多 ...
- Python爬虫入门四之Urllib库的高级用法
1.设置Headers 有些网站不会同意程序直接用上面的方式进行访问,如果识别有问题,那么站点根本不会响应,所以为了完全模拟浏览器的工作,我们需要设置一些Headers 的属性. 首先,打开我们的浏览 ...
- AngularJS入门心得2——何为双向数据绑定
前言:谁说Test工作比较轻松,最近在熟悉几个case,差点没疯.最近又是断断续续的看我的AngularJS,总觉得自己还是没有入门,可能是自己欠前端的东西太多了,看不了几行代码就有几个常用函数不熟悉 ...
- MySQL入门 (四) : JOIN 与UNION 查询
1 使用多个表格 在「world」资料库的「country」表格中,储存世界上所有的国家资料,其中有一个栏位「Capital」用来储存首都资料,不过它只是储存一个编号:另外在「city」表格中,储存世 ...
- Jmeter Web 性能测试入门 (四):一个小实例带你学会 Jmeter 脚本编写
测试场景: 模拟并发100个user,在TesterHome 站内搜索VV00CC 添加线程组 添加HTTP信息头管理器 添加HTTP Sampler 填写HTTP Sampler中的信息 添加监听器 ...
- AngularJS入门心得1——directive和controller如何通信
粗略地翻了一遍<JavaScript DOM编程艺术>,就以为可以接过AngularJS的一招半式,一个星期过去了,我发现自己还是Too Young,Too Simple!(刚打照面的时候 ...
- (转载)MFC入门(四) 作者 zhoujiamurong
关键字 MFC 原作者姓名 zhoujiamurong 介绍 这一节,介绍工具条和状态栏 读者评分 71 评分次数 18 正文 MFC入门(四) 工具条和状态栏 原创 作者:zhoujiamuron ...
- AngularJS进阶(四十)创建模块、服务
AngularJS进阶(四十)创建模块.服务 学习要点 使用模块构架应用 创建和使用服务 为什么要使用和创建服务与模块? 服务允许你打包可重用的功能,使之能在此应用中使用. 模块允许你打包可重用的功能 ...
- 算法入门四:函数与函数体:
文章目录 算法入门四:函数与函数体: 引言: 函数与函数体: 章节介绍: 1.洛谷 p5735 Java 距离函数 2.洛谷 p5737 Java 闰年展示 3.洛谷 p5739 Java 计算阶乘 ...
最新文章
- python类方法可以访问类变量_python类变量可以从类方法访问? - python
- mysql数据导库常用操作
- Java虚拟机(JVM)参数配置说明
- Mysql不同存储引擎的表转换方法
- Sentinel(十二)之实时监控
- html 适配 android,Android 版本适配 6~11
- STS插件_ springsource-tool-suite插件各个历史版本
- Git 学习笔记之 merge
- git 理解 HEAD^与HEAD~
- tcpdump抓两个网卡的包_Linux下网络抓包命令tcpdump详解(在wireshark中看包)
- 数字信号处理--FFT与蝶形算法--学习笔记
- cra脚手架安装typescript
- 外国同行看中国互联网“微创新”
- 《C语言及程序设计》实践参考——定期存款利息计算器
- 很常用的倒计时脚本,可任意设置时…
- 中国大陆已有IB学校243所
- 这才不是我想看的《时间简史》
- GDPR is coming!
- html仿短信聊天,前端开发JS模仿手机短信发送
- 待完成 14 python进阶
热门文章
- mysql创建新表失败_MySQL创建表失败的问题
- str python3_python3 str(字符串)
- mysql proxy性能差_两种MySQL-Proxy架构的测试对比记录
- docker卸载命令_使用docker完成生信分析环境搭建
- linux中terminal中编译源码,分享|Terminator:一款一个窗口包含多个终端的 Linux 终端仿真器...
- 华为老机器可以升级鸿蒙,鸿蒙OS手机将至,华为手机用户提问,老款机器能升级吗?...
- FPGA的设计艺术(8)最佳的FPGA开发实践之严格遵循过程
- FPGA逻辑设计回顾(11)FPGA以及PC中的RAM与ROM
- FPGA笔试题解析(一)
- 【 MATLAB 】通过不同样本数的同一个有限长序列作 DTFT 对比