自己定义一个tab指令
2024-09-26 17:38:25
定义一个tab切换的指令:
指令的文件结构:
Js/directives/tab
tab.html
tab.js
tab.html:
<style>
.my-li-style{
line-height: 30px;
margin-right: 10px;
border-radius: 3px;
height:30px;
cursor: pointer;
}
.tabactive{
color: #fff;
background:#f48a36;
}
</style>
<div class="amdin-nav">
<ul class="list-inline adminAction-listHeader">
<li class="my-li-style" ng-repeat="tab in tab_list"
ng-click="tab_click(tab.state)"
ng-class={tabactive:current_state==tab.state}
ui-sref="{{tab.state}}">{{tab.name}}</li>
</ul>
</div>
Tab.js:
define(["app"],function(myapp){
myapp.directive('mytab',["$state",function($state){
return {
scope:{
data:"="
},
templateUrl:'js/directives/tab/tab.html',
link:function(s,ele,attrs){
s.current_state=$state.current.name;//初始化(获得当前的路由状态)
s.tab_click=function(cstate){//每次触发此事件,就传递过来状态值
s.current_state=cstate;
}
s.$watch("data",function(n_data){//监听值的改变
s.tab_list=n_data;
})
}
};
}]);
});
控制器:
//创意界面的权限控制器
define(["app",'services/zct_get_my_right','directives/tab/tab'], function (myapp) {
myapp.controller('ideas_first_ctrl',
['$scope','$rootScope','$state','get_my_right', function (s,rs,$state,getRight) {
var my_right=getRight.get_right(localStorage.permission);
s.idea_tab=[
{name:"全部创意",state:"home.ideas.allIdeas"},
{name:"我的创意",state:"home.ideas.myIdeas"},
];
}])
});
Html:
<div class="ideas-list">
<div class="my-row"> <mytab data="idea_tab"></mytab> <div class=" list-content" ui-view="part" ></div>
</div>
</div>
最新文章
- POJ3070 Fibonacci[矩阵乘法]
- 初次使用并安装express
- BZOJ1950 : [Ceoi2006]Link
- angularjs与require的集成摘抄
- SQL Server Merge语句的使用
- Java 泛型数组
- 《刺杀金正恩》1080p全高清无水印,附中文字幕 bt种子下载,附字母(百度网盘/360云盘)
- C++“窗体”程序设计启蒙
- angular4.0项目build发布后,刷新页面报错404
- Java并发框架——AQS之如何使用AQS构建同步器
- 使用lombok 注解Java类
- C#中的yield return用法演示源码
- WPF实现分页控件
- 定制django admin页面的跳转
- sublime text3安装 mac os汉化/常用模块
- [svn] 在线安装
- HDU 1577 WisKey的眼神 (找规律 数学)
- 【虚拟机】linux 桥接模式 固定静态IP
- 值得学习的C开源项目
- Oracle Schema
热门文章
- ORM--------Hibernate、Mybatis与Spring Data的区别
- S16 day7 socket
- 将封装了envi功能的IDL类导出成java类,方便java调用
- 【zznu-夏季队内积分赛3-J】追忆
- bat文件执行cmd命令 进入文件夹不退出
- Qt出现QObject::connect: Cannot queue arguments of type &#39;******&#39;的解决方法
- 【转】busybox分析——arp设置ARP缓存表中的mac地址
- linux安装mysql5.7.24
- iOS TableView常见问题
- c# DataTable导出为excel