关于UI BootStrap

  • UI BootStrap 是angularUI团队用纯粹angularJS语法编写的Bootstrap组件

1. 关于ng-router(angular-router.js)和ui-router(angular-ui-router.js)的区别

  • ngroute是用AngularJS框架的路由的核心部分。
  • ui-router是一个社区库,它是用来提高完善ngroute路由功能的。

实例:

使用ng-router:

   首先引入js文件

<script src="js/angular.js"></script>
<script src="js/angular-route.js"></script>

  然后在html中

<h2>示例AngularJS 路由应用</h2>
<ul>
<li><a href="#/">首页</a></li> // 在angular中,用#号后面内容作为路由跳转的路径(因为在浏览器中#号后面的url是被忽略不计的,所以只相当于浏览器处于同一页面,而
<li><a href="#/computers">电脑</a></li> //angular根据#号后面的内容来动态更改显示的内容)
<li><a href="#/printers">打印机</a></li> <li><a href="#/blabla">其他</a></li> </ul> <hr /> <div ng-view></div> // 用ng-view来显示对应的html视图

  在controller中

var myApp = angular.module('myApp',['ngRoute']).config(['$routeProvider', function ($routeProvider) { // 首先在模块中加入那个Route依赖,函数中引入$routerProvider
$routeProvider
.when('/', {template:'this is main page'}) // 根据提供的when函数来进行相应配置
.when('/computers',{
template:'this is conputer page'
})
.when('/printers', {
template:'this is printer page'
})
.otherwise({redirectTo: '/'});
}]);

 完成

使用ui-router:

 ui-router的使用方法: http://www.jb51.net/article/78895.htm

----------------------------

1. 使用uib-tooltip

<!--使用Uib-tooltip提示框-->
<div> <div class="form-group">
<button uib-tooltip="this is example" tooltip-placement="right" type="button" class="btn btn-default">
文本提示框
</button>
</div> <div class="form-group">
<button href="#" uib-tooltip-html="htmlToolTip">使用html的提示框</button>
</div> <div class="form-group">
<button type="text" uib-tooltip-template = "'myTooltipTemplate.html'" tooltip-placement="top-right">模板提示框</button>
</div> </div>
<script type="text/ng-template" id="myTooltipTemplate.html" >
<div>
<span>使用模板的提示框</span>
</div>
</script>
tooltip可以使用的属性有:

属性名	默认值	备注
tooltip-animation true 是否在显示和隐藏时使用动画
tooltip-append-to-body false 是否将提示框放在body的末尾
tooltip-class 加在tooltip上的自定义的类名
tooltip-enable true 是否启用
tooltip-is-open false 是否显示提示框
tooltip-placement top 提示框的位置。可设置的值包括:top,top-left,top-right,bottom,bottom-left,bottom-right,left,left-top,left-bottom,right,right-top,right-bottom
tooltip-popup-close-delay 0 关闭提示框前的延迟时间
tooltip-popup-delay 0 显示提示框前的延迟时间
tooltip-trigger mouseenter 显示提示框的触发事件

  2. 使用popover

	<!--使用popover提示框-->
<div> <div class="form-group">
<button uib-popover="this is popover box" popover-placement="auto" popover-trigger="'mouseenter'">文本提示框</button>
</div> <div class="form-group" >
<button uib-popover-html="htmlToolTip" popover-trigger="'mouseenter'">html提示框</button>
</div> <div class="form-group">
<button uib-popover-template="'myTooltipTemplate.html'" popover-trigger="'mouseenter'" popover-title="tittle here" popover-placement="auto" >模板提示框</button>
</div> </div>
popover的属性有:

属性名	默认值	备注
popover-animation true 是否在显示和隐藏时使用动画
popover-append-to-body false 是否将提示框放在body的末尾
popover-enable true 是否启用
popover-is-open false 是否显示提示框
popover-placement top 提示框的位置。可设置的值包括:top,top-left,top-right,bottom,bottom-left,bottom-right,left,left-top,left-bottom,right,right-top,right-bottom
popover-popup-close-delay 0 关闭提示框前的延迟时间
popover-popup-delay 0 显示提示框前的延迟时间
popover-trigger mouseenter 显示提示框的触发事件
popover-title 标题
大部分属性和tooltip也是一样的,只是没有popover-class,另外多了个popover-title。 需要注意的一点是,popover的全局配置和tooltip一样,是使用$uibTooltipProvider来配置的。

  全局配置tooltip和popover参照网址 http://www.bubuko.com/infodetail-1669567.html

2. 使用uib-datepicker并且封装成指令

这个插件是datepicker只能获取日期!不是datetimepicker!还有一个叫timepicker,真纳闷为什么angular团队不把这两个插件组成一个。。。

因为项目用到的第三方库实在太多,不愿意再去别的地方再弄一个时间控件,所以就用了angular自带的这个, 说实话,很一般。。。

上代码吧:

指令声明:
emms.directive('emmsSingleDatepicker', function() { return {
restrict: 'AE',
replace: false,
templateUrl: 'directives/single-datepicker/single-datepicker.html',
scope: {
dateValue: '=ngModel' //逆向绑定输入框的值到父作用域的ng-model
},
controller: function($scope, $filter) {
$scope.dateOptions = {
maxDate: new Date(2099, 12, 30)
};
$scope.altInputFormats = ['yyyy-M!-d!'];
$scope.open = function() {
$scope.opened = true;
};
$scope.transformDate = function() {
$scope.dateValue = $filter('date')($scope.date, 'yyyy-MM-dd HH:mm:ss');
};
}
}
}); 指令模板:uib-datepicker就在这
<div>
<span class="input-group input-group-xs" style="width:80%;margin:0 auto;">
<input type="text" class="form-control" uib-datepicker-popup="{{'yyyy-MM-dd'}}" ng-model="date" is-open="opened"
clear-text="清空" current-text="今天" ng-required="true" close-text="关闭" ng-change="transformDate()"/>
<span class="input-group-btn">
<button type="button" class="btn btn-default" ng-click="open()"><i class="glyphicon glyphicon-calendar"></i></button>
</span>
</span>
</div> 调用:(别忘了引入指令的js文件)
<emms-single-datepicker ng-model="newAudit.annualDate"></emms-single-datepicker>

 

3. uib-tab标签页

直接在要使用的div或者容器内使用
<uib-tabset active="activeJustified" justified="true">
<uib-tab index="0" heading="汽车" th:include="vehicle/info/templates::car">汽车</uib-tab>
<uib-tab index="1" heading="工作车" th:include="vehicle/info/templates::audit" select="toAudit()">工作车</uib-tab>
<uib-tab index="2" heading="可用车辆" th:include="vehicle/info/templates::insurance" select="toInsurance()">可用车辆</uib-tab>
</uib-tabset>

 

4. uib-modal 模态框

前台调用:
<a ng-click="openMaintenanceDetail(maintenance)" class="label label-info btn-xs">编辑</a> 打开模态框的函数
$scope.openVehicleDetail = function(vehicle) {
// 弹出确认窗口
var modalInstance = $uibModal.open({
templateUrl: 'vehicle-detail.html',
controller: 'VehicleDetailCtrl',
animation: true,
resolve: {
vehicle: vehicle,
allTypes: function() {
return $scope.allTypes;
}
},
size: 'lg'
});
// 更新页面内容
modalInstance.result.then(function(response) {
refreshByCloseStatus(response, $scope.vehicles);
});
} 模态框对应的controller
emms.controller('VehicleDeleteCtrl', ['$scope', '$uibModalInstance', ,
function($scope, $uibModalInstance) { $scope.confirm = function() {
judgeDelete(flag, instance);
$uibModalInstance.close("close");
} $scope.cancel = function() {
$uibModalInstance.dismiss("cancel");
} }]); 模态框对应的html模板 <script type="text/ng-template" id="VehicleInsurance.html">
<div> <div class="modal-header">
<p class="modal-title" align="center">保险信息</p>
</div>
<div class="modal-body"> <form name="VehicleInfo"> <div class="form-group">
<td><label for="vehicleType">保险车辆 <span class="text-danger">*</span></label>
</td>
<td>
<select class="form-control" ng-model="insurance.vehicle" ng-options="vehicle as vehicle.vehicleIDNum for vehicle in allVehicles">
<option >请选择</option>
</select>
</td>
</div> <div class="form-group">
<td><label for="">保险日期 <span class="text-danger">*</span></label></td>
<td><input id="" type="text" class="form-control" ng-model="insurance.date" placeholder="" /></td>
</div> <div class="form-group">
<td><label for="">保险公司 <span class="text-danger">*</span></label></td>
<td><input id="" type="text" class="form-control" ng-model="insurance.companyName" placeholder="" /></td>
</div> <div class="form-group">
<td><label for="">保险类型 <span class="text-danger">*</span></label></td>
<td><input id="" type="text" class="form-control" ng-model="insurance.type" placeholder="" /></td>
</div> <div class="form-group">
<td><label for="">保险金额 <span class="text-danger">*</span></label></td>
<td><input id="" type="text" class="form-control" ng-model="insurance.money" placeholder="" /></td>
</div> <div class="form-group">
<td><label for="">办理人 <span class="text-danger">*</span></label></td>
<td><input id="" type="text" class="form-control" ng-model="insurance.agent.staffName" placeholder="" /></td>
</div> <div class="form-group">
<td><label for="">备注 <span class="text-danger">*</span></label></td>
<td><input id="" type="text" class="form-control" ng-model="insurance.remark" placeholder="" /></td>
</div> <div class="form-group" align="right">
<td colspan=2>
<button class="btn btn-primary import-applicant" type="button" ng-click="cancel()">取消</button>
<button class="btn btn-primary import-applicant" type="submit" ng-click="commit(insurance)">提交</button>
</td>
</div>
</form>
</div> </div>
</script>

  

Angular -ui - BootStrap组件的解释以及使用的更多相关文章

  1. UIBootatrap:是由AngularJS UI团队编写的纯AngularJS实现的Bootstrap组件

    本文为翻译文档.原文是https://angular-ui.github.io/bootstrap/(需要FQ). 准备工作: 依赖关系:这个库中包含一组基于Bootstrap组件和CSS的原生Ang ...

  2. Angular不同版本对应的Bootstrap组件

    AngularJS 1.x版本对应的 bootstrap组件库是ui-bootstrap; http://www.cnblogs.com/pilixiami/p/5597634.html Angula ...

  3. Angular动态创建组件之Portals

    这篇文章主要介绍使用Angular api 和 CDK Portals两种方式实现动态创建组件,另外还会讲一些跟它相关的知识点,如:Angular多级依赖注入.ViewContainerRef,Por ...

  4. JS组件系列——Bootstrap组件福利篇:几款好用的组件推荐(二)

    前言:上篇 JS组件系列——Bootstrap组件福利篇:几款好用的组件推荐 分享了几个项目中比较常用的组件,引起了许多园友的关注.这篇还是继续,因为博主觉得还有几个非常简单.实用的组件,实在不愿自己 ...

  5. 【转】JS组件系列——Bootstrap组件福利篇:几款好用的组件推荐(二)

    前言:上篇 JS组件系列——Bootstrap组件福利篇:几款好用的组件推荐 分享了几个项目中比较常用的组件,引起了许多园友的关注.这篇还是继续,因为博主觉得还有几个非常简单.实用的组件,实在不愿自己 ...

  6. Bootstrap组件福利篇:十二款好用的组件推荐

    阅读目录 一.时间组件 1.效果展示 2.源码说明 3.代码示例 二.自增器组件 1.效果展示 2.源码说明 3.代码示例 三.加载效果 一.实用型 二.炫酷型 四.流程图小插件 1.效果展示 2.源 ...

  7. 17、bootStrap组件

    1.bootStrap组件 无数可复用的组件,包括字体图标.下拉菜单.导航.警告框.弹出框等更多功能. 2.字体图标 ①不要和其他图标混合使用 ②只能对内容为空的元素起作用 3.下拉菜单 <di ...

  8. angular ui $modal 使用 option

    $modal是一个可以迅速创建模态窗口的服务,创建部分页,控制器,并关联他们 $modal仅有一个方法open(options) templateUrl:模态窗口的地址 template:用于显示ht ...

  9. [译]发布ABP v0.19包含Angular UI选项

    发布ABP v0.19包含Angular UI选项 ABP v0.19已发布,包含解决的~90个问题和600+次提交. 新功能 Angular UI 终于,ABP有了一个SPA UI选项,使用最新的A ...

随机推荐

  1. NewLife.XCode 上手指南2018版(二)增

    目录 NewLife.XCode 上手指南2018版(一)代码生成 NewLife.XCode 上手指南2018版(二)增 NewLife.XCode 上手指南2018版(三)查 NewLife.XC ...

  2. String不可变StringBuffer可变

    String是一个类,也可以表示字符串数据类型 String:是对象不是原始类型.为不可变对象,一旦被创建,就不能修改它的值.对于已经存在的String对象的修改都是重新创建一个新的对象,然后把新的值 ...

  3. java使用poi读取doc和docx文件

    这几天在学习java io流的东西,有一个网友看到博客后问了一个问题,就是说他的doc文档为什么用我所说的方法死活就是乱码. 我一开始以为是他方法问题,结果自己试了之后发现和他的结果一样也是乱码. 于 ...

  4. RHCE6.4 rpm 安装gcc

    先将gcc的iso里的Packages拷贝到根目录下,方便以后使用,再找gcc的rpm包安装: 网上说有以下依赖,需要按照一下顺序安装: rpm -ivh cpp*****.rpm  rpm -ivh ...

  5. Linux显示USB设备

    Linux显示USB设备 youhaidong@youhaidong-ThinkPad-Edge-E545:~$ lsusb -tv /: Bus 08.Port 1: Dev 1, Class=ro ...

  6. OpenStack_I版 7.Cinder部署

    Cinder提供块存储   Cinder安装     创建相关的目录           创建数据库   修改Cinder配置文件       同步数据库   keystone相关配置         ...

  7. RobotFramework自动化测试框架的基础关键字(二)

    1.1.1        如何快速查询某一个关键字的API说明 鼠标选中我们关键字,同时按住Ctrl+Alt键,即可出来该关键字的帮助API以及使用示例 1.1.2        如何快速补全关键字 ...

  8. xshell无法登录阿里云服务器

    1. 现象 a. 使用xshell无法登录服务器 b. 查看sshd服务 c. 不同公网ip的电脑正常登陆 2. 解决方案 a. 不同公网ip可以登录,断定是ip被黑名单,联系阿里云服务,把公网ip加 ...

  9. Weex 初探

    Weex 初探 Weex 介绍 Weex 是阿里于 2016 年开源的一款开发框架,它的介绍是: Weex 是一个使用 Web 开发体验来开发高性能原生应用的框架. 它使用了 Web 技术来开发 An ...

  10. centos svn 服务器间的数据迁移

    svnadmin dump erp > ~/erp.svn   当前目录下的erp 导出到根目录下名为erp.svn tar -zcvf backupSvn.tar.gz backupSvn   ...