angularJS的插件使用

摘要:
$uibModal&&$uibModalInstance$uib莫代尔和$uibModalInstance是angularJS的弹出控件,github地址http://angular-ui.github.io/bootstrap/#/modal$uibModal:负责调用弹出窗口$uibModelInstance:弹出实例示例如下:弹出模板:1˂scripttype=“text/n
$uibModal&&$uibModalInstance

$uibModal和$uibModalInstance是一款angularJS的弹窗控件,github地址 http://angular-ui.github.io/bootstrap/#/modal

$uibModal:负责调出弹窗

$uibModalInstance:弹窗实例

例子如下:

弹窗 template:

 1 <script type="text/ng-template" id="detailWin">
 2     <div class="marketing-strategyList-win">
 3         <div class="modal-header">
 4             <h4 class="modal-title">{{modalTitle}}</h4>
 5             <div class="btn-close" ng-click="closeModal()">×</div>
 6         </div>
 7         <div class="modal-body">
 8             <div class="cui-table">
 9                 <table class="table table-bordered mb20">
10                     <thead class="table-header">
11                         <tr class="table-row">
12                             <th class="th-unit"><div class="th-countent">业务场景</div></th>
13                             <th class="th-unit"><div class="th-countent">活动数</div></th>
14                             
15                         </tr>
16                     </thead>
17                     <tbody  class="table-body">
18                          <tr class="table-row" ng-repeat="$tr in tableData.strategyViewList">
19                              <td class="td-unit">{{$tr.sceneName | nullFilter:'-'}}</td>
20                              <td class="td-unit">{{$tr.activeCount}}</td>
21                          </tr>
22                     </tbody>
23                 </table>
24             </div>
25             <div class="btn-warp">
26                 <a class="btn cui-button cui-button-theme" ng-click="viewDetail()">查看详情</a>
27             </div>
28         </div>
29     </div>
30 </script>

调用弹窗controller

 1 app.controller('marketing.strategyCtrl', ['$scope', function($scope) {
 2 
 3     $uibModal.open({
 4         animation: true, //弹窗toggle时是否有动画
 5         template: $('#detailWin').html(), //弹窗模板
 6         controller: 'marketing.strategyCtrl.win', // 弹窗controller
 7         size: 'sm', //弹窗大小 sm、md、ld
 8         resolve: { //数据交互
 9             $postParams: function() {
10                 return {
11                     modalTitle: tag.name + act.name + "共计" + totalCount + '次',
12                     data: d
13                 };
14             }
15         }
16     }).result.then(function(postData) {
17         var pieData = pieCenter.initPieData(postData);
18         pieCenter.renderPieView(pieData);
19     });
20 }])

弹窗

 1 app.controller('marketing.strategyCtrl.win', ['$scope', '$postParams', '$uibModalInstance',
 2     function($scope,  $postParams, $uibModalInstance) {
 3         $scope.modalTitle = $postParams.modalTitle;
 4         $scope.tableData = $postParams.data;
 5         window.tableData = $scope.tableData;
 6         //关闭
 7         $scope.closeModal = function() {
 8             $uibModalInstance.dismiss();
 9         };
10         //查看详情
11         $scope.viewDetail = function() {
12             //回调数据
13             $uibModalInstance.close({
14                 data: $scope.tableData,
15                 title: $scope.modalTitle
16             });
17         };
18     }
19 ])

 $stateProvider+$requireProvider配置路由,$state+$stateParams在路由中配置参数

var stateOptions = {
    "url": item.url,
    "templateUrl": path + item.templateUrl + "?v=" + version,
    "customParams": item.customParams,
    "resolve": {
        deps: $requireProvider.require(tplResultArray),
        js: $requireProvider.requireJS(jsResultArray),
        css: $requireProvider.requireCSS(cssResultArray)
    }
};
$stateProvider.state(item.name, stateOptions);
 1 {
 2     "customParams": {
 3         "parentState": "/marketing/userTpl",
 4         "pageType": "edit"
 5     },
 6     "path": "/assets/modules/marketing/userTpl/",
 7     "name": "/marketing/userTplEdit",
 8     "url": "/marketing/userTplEdit?id",
 9     "templateUrl": "templates/detail.tpl",
10     "js": [
11         "js/controllers/detailCtrl.js",
12         "js/services/service.js"
13     ],
14     "css": [
15         "css/css.css"
16     ],
17     "deps": []
18 }
1 $scope.pageType = $state.current.customParams.pageType;
2 $scope.id = $stateParams.id;

免责声明:文章转载自《angularJS的插件使用》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇php之 常用的 流程管理多线程详细介绍下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

[转]angular 禁止缓存

本文转自:https://www.cnblogs.com/jonney-wang/p/9797906.html angular 单页面开发,会存在和管理很多HTML和JS文件,缓存有时是个麻烦。 在开发和测试阶段,F12调出调试工具,禁止缓存F5刷新下就好了。 但是在客户那里缓存就体验效果不好,甚至认为有问题,联系客服,影响工作效率。 主要做几点就可以了,...

AngularJS中$timeout和$interval的用法详解

1. 先将$interval,$timeout,作为参数注入到controller中,例如rds.controller('controllerCtrl', ['app', '$scope','$http','$routeParams','$filter','$location','$interval','$timeout', function (a...

angularjs 路由 异步加载js

angularjs 异步加载js 有两种方法 第一种 使用$q 和 requireJS 加载 这个问题 首要出现 在 当我 把require 引入 项目中是,希望做到 点击路由时加载相应的页面html和 js. 起初我是将 route 的 controller 设置为 require(‘controller.js’) 来 异步加载, 当然,问题是不可能这么...

AngularJS从构建项目开始

AngularJS从构建项目开始 AngularJS体验式编程系列文章,将介绍如何用angularjs构建一个强大的web前端系统。angularjs是由Google团队开发的一款非常优秀web前端框架。在当前如此多的web框架下,angularjs能脱颖而出,从架构设计上就高人一等,双向数据绑定,依赖注入,指令,MVC,模板。Angular.js创新地...

angular5 基于ngx-translate实现多语言切换

angular的坑永远都是那么多,当然了,主要还是我太菜~ 基于ngx-translate实现多语言切换这个功能,我又是折腾了很久,下面是我实现的过程: 1、安装ngx-translate 需要安装@ngx-translate/core和@ngx-translate/http-loader,我的问题主要出在这个,angular的版本不同,要安装对应组件的版...

关于 angular 项目 结合 RequireJs 的问题整理

1、在 将 依赖的js 通过 require.config 设置 映射的时候,结合dataTables.bootstrap.js和 jquery.dataTables.js 时 遇到如下报错: Uncaught Error: Script error for "datatables.net", needed by: dataTablesbootstrap;...