全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

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

前言

大家在平时的项目开发中,应该会经常遇到上图所示的需求,就是在一个页面中有多个标签,被选中的标签颜色会高亮显示,切换不同标签显示相应的不同内容。如果内容代码过多则写在同一个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能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。
       


# angularjs  # ng  # include  # 多标签  # angular  # ES6中Array.includes()函数的用法  # springMVC使用jsp:include嵌入页面的两种方法(推荐)  # 简单谈谈c/c++中#import、#include和@class的区别  # 解析C++编程中的#include和条件编译  # C++常用的#include头文件总结  # c++ #include是怎么样工作的?  # C++中#include头文件的示例详解  # 的是  # 就会  # 加载  # 则可  # 写在  # 好了  # 也会  # 我觉得  # 第一个  # 多个  # 则是  # 我对  # 中有  # 我把  # 就把  # 第二个  # 来看看  # 都将  # 就说  # 可以使用 


相关文章: 合肥做个网站多少钱,合肥本地有没有比较靠谱的交友平台?  如何制作算命网站,怎么注册算命网站?  建站主机选购指南:核心配置优化与品牌推荐方案  建站主机默认首页配置指南:核心功能与访问路径优化  如何用IIS7快速搭建并优化网站站点?  Swift中swift中的switch 语句  如何在阿里云完成域名注册与建站?  建站VPS能否同时实现高效与安全翻墙?  建站与域名管理如何高效结合?  seo网站制作优化,网站SEO优化步骤有哪些?  ,交易猫的商品怎么发布到网站上去?  在线制作视频网站免费,都有哪些好的动漫网站?  如何快速启动建站代理加盟业务?  如何续费美橙建站之星域名及服务?  七夕网站制作视频,七夕大促活动怎么报名?  常州自助建站工具推荐:低成本搭建与模板选择技巧  建站之星备案流程有哪些注意事项?  简历在线制作网站免费,免费下载个人简历的网站是哪些?  外贸公司网站制作哪家好,maersk船公司官网?  小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建  Python lxml的etree和ElementTree有什么区别  大连网站制作公司哪家好一点,大连买房网站哪个好?  网站专业制作公司有哪些,做一个公司网站要多少钱?  建站之星代理费用多少?最新价格详情介绍  定制建站是什么?如何实现个性化需求?  网站制作报价单模板图片,小松挖机官方网站报价?  如何在云主机上快速搭建多站点网站?  视频网站app制作软件,有什么好的视频聊天网站或者软件?  如何在阿里云购买域名并搭建网站?  移民网站制作流程,怎么看加拿大移民官网?  保定网站制作方案定制,保定招聘的渠道有哪些?找工作的人一般都去哪里看招聘信息?  如何零成本快速生成个人自助网站?  网站制作软件有哪些,制图软件有哪些?  Python多线程使用规范_线程安全解析【教程】  东莞专业制作网站的公司,东莞大学生网的网址是什么?  如何使用Golang table-driven基准测试_多组数据测量函数效率  如何快速搭建自助建站会员专属系统?  如何自定义建站之星模板颜色并下载新样式?  中山网站制作网页,中山新生登记系统登记流程?  高端云建站费用究竟需要多少预算?  零服务器AI建站解决方案:快速部署与云端平台低成本实践  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  青浦网站制作公司有哪些,苹果官网发货地是哪里?  创业网站制作流程,创业网站可靠吗?  韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐  图片制作网站免费软件,有没有免费的网站或软件可以将图片批量转为A4大小的pdf?  小型网站建站如何选择虚拟主机?  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  如何通过山东自助建站平台快速注册域名?  如何用虚拟主机快速搭建网站?详细步骤解析 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。