Angular.js中ng-include用法及多标签页面的实现方式详解


Posted in Javascript onMay 07, 2017

前言

大家在平时的项目开发中,应该会经常遇到上图所示的需求,就是在一个页面中有多个标签,被选中的标签颜色会高亮显示,切换不同标签显示相应的不同内容。如果内容代码过多则写在同一个html文件就会显得特别乱,所以这里我们最好把页面代码分开单独管理,controller也可以分开来管理,这样就会显得清楚的多。

这里就要使用到Angularjs中个ng-include指令。下面来看看详细的介绍:

一、多标签的编写

首先需要了解需求:

      1.同时只能选中一个标签

     2.被选中的标签背景色以及自体颜色都将改变。

第一个需求我们可以使用一个flag变量来控制,即一个是flag另一个则是!flag。而第二个需求则可以使用ng-class指令来完成,提前把两个样式的class写好,通过ng-class来判断何时显示何种样式即可。

这里我把所有的逻辑代码都写在了HTML页面中,首先在页面初始化的时候使用ng-init指令初始化一个flag变量,使用ng-class绑定不同的样式,然后使用ng-click事件来动态改变flag。

代码如下:

<ion-view ng-init="test=true">
 <div class="bar bar-header bar-royal">
 <div class="title">Test</div>
 </div>
 <div class="bar bar-subheader">
 <div class="button-bar">
  <a class="button" ng-class="test?'button-positive':''" ng-click="test=true">button1</a>
  <a class="button" ng-class="!test?'button-positive':''" ng-click="test=false">button2</a>
 </div>
 </div>
 <ion-content class="has-subheader">
  </ion-content>
</ion-view>

二、Ng-Include的使用

多标签button编写好了,需要对点击的button展示对应的页面内容,这里使用ng-include来管理代码。如下:

<ion-content class="has-subheader">
 <div ng-show="test" ng-include="'template/template1.html'">这里不管写什么都不会展示,完全被ng-include取代</div>
 <div ng-show="!test" ng-include="'template/template2.html'"></div>
</ion-content>

这里我使用的是ng-show,即在页面加载的时候就把全部的内容加载完毕了,可以起到一个预加载的效果,当然,如果需要点击对应button的时候再展示相应的内容则可以使用ng-if,效果一样。

ng-include后面写的是html文件对应的url地址,是相对于index.html的地址。

来看一下template1的代码:

<div ng-controller="template1Controller">
 <div class="row">
 <div class="col text-center" ng-repeat="x in tests">{{x.name}}</div>
 </div>
</div>

我对template1进行了单独的controller管理,Ctrl代码为:

angular.module('includeExample', ['ionic'])
 .controller('template1Controller', ['$scope', function ($scope) {
 $scope.tests = [
  {
  name: 'test1'
  }, {
  name: 'test2'
  }, {
  name: 'test3'
  }
 ]
 }]);

到这,Ng-Include的用法大概就说完了,我觉得在项目的开发中还是比较有用的,分开管理逻辑和页面都会比较清晰,也会在一定程度上提高开发效率。

效果为:

Angular.js中ng-include用法及多标签页面的实现方式详解

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家学习或者使用Angular.js能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对三水点靠木的支持。
       

Javascript 相关文章推荐
IE7提供XMLHttpRequest对象为兼容
Mar 08 Javascript
javaScript中的this示例学习详解及工作原理
Jan 13 Javascript
jQuery中attr()与prop()函数用法实例详解(附用法区别)
Dec 29 Javascript
javascript实现用户点击数量统计
Dec 25 Javascript
微信小程序 ecshop地址三级联动实现实例代码
Feb 28 Javascript
JS异步文件上传(兼容IE8+)
Apr 02 Javascript
在Vue组件化中利用axios处理ajax请求的使用方法
Aug 25 Javascript
JS使用遮罩实现点击某区域以外时弹窗的弹出与关闭功能示例
Jul 31 Javascript
小程序多图列表实现性能优化的方法步骤
May 28 Javascript
如何解决日期函数new Date()浏览器兼容性问题
Sep 11 Javascript
vue实现导航标题栏随页面滚动渐隐渐显效果
Mar 12 Javascript
基于JavaScript或jQuery实现网站夜间/高亮模式
May 30 jQuery
JavaScript的继承实现小结
May 07 #Javascript
vue2.0多条件搜索组件使用详解
Mar 26 #Javascript
Vue 进阶教程之v-model详解
May 06 #Javascript
jQuery动态追加页面数据以及事件委托详解
May 06 #jQuery
AngularJS封装$http.post()实例详解
May 06 #Javascript
JavaScript瀑布流布局实现代码
May 06 #Javascript
jquery点赞功能实现代码 点个赞吧!
May 29 #jQuery
You might like
用PHP和ACCESS写聊天室(十)
2006/10/09 PHP
Dedecms常用函数解析
2008/02/01 PHP
php 无极分类(递归)实现代码
2010/01/05 PHP
供参考的 php 学习提高路线分享
2011/10/23 PHP
必须收藏的php实用代码片段
2016/02/02 PHP
php变量与数组相互转换的方法(extract与compact)
2016/12/02 PHP
Yii框架的布局文件实例分析
2019/09/04 PHP
safari,opera嵌入iframe页面cookie读取问题解决方法
2010/06/23 Javascript
Jquery工作常用实例 使用AJAX使网页进行异步更新
2011/07/26 Javascript
jQuery动态添加的元素绑定事件处理函数代码
2011/08/02 Javascript
基于Jquery的文字自动截取(提供源代码)
2011/08/09 Javascript
解析Javascript小括号“()”的多义性
2013/12/03 Javascript
JavaScript Math.round() 方法
2015/12/18 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
2016/07/21 Javascript
Bootstrap的fileinput插件实现多文件上传的方法
2016/09/05 Javascript
JavaScript实现垂直向上无缝滚动特效代码
2016/11/23 Javascript
js实现自动轮换选项卡
2017/01/13 Javascript
JS实现一个简单的日历
2017/02/22 Javascript
AngularJS中的路由使用及实现代码
2017/10/09 Javascript
浅谈vue2 单页面如何设置网页title
2017/11/08 Javascript
详解vue中this.$emit()的返回值是什么
2019/04/07 Javascript
Vue编程式跳转的实例代码详解
2019/07/10 Javascript
vue实现放大镜效果
2020/09/17 Javascript
[02:51]2014DOTA2国际邀请赛 IG战队官方纪录片
2014/07/21 DOTA
Python外星人入侵游戏编程完整版
2020/03/30 Python
python 集合 并集、交集 Series list set 转换的实例
2018/05/29 Python
pygame游戏之旅 载入小车图片、更新窗口
2018/11/20 Python
python 使用pandas计算累积求和的方法
2019/02/08 Python
Python实战购物车项目的实现参考
2019/02/20 Python
国际贸易专业个人求职信范文分享
2013/12/14 职场文书
教师评优事迹材料
2014/01/10 职场文书
专科应届毕业生求职信
2014/06/04 职场文书
横店影视城导游词
2015/02/06 职场文书
大学毕业晚会开场白
2015/05/29 职场文书
Python机器学习之PCA降维算法详解
2021/05/19 Python
Ruby序列化和持久化存储 Marshal和Pstore介绍
2022/04/18 Ruby