AngularJS 与 Bootstrap 的结合实例

本文通过一个实例展示了如何将AngularJS与Bootstrap结合,创建HTML页面,如demo_BGMP.html和user_list.html,并构建项目目录结构,实现了项目首页及用户管理列表页面的功能,提供了项目实际效果的展示。
摘要由CSDN通过智能技术生成

这里只列出 一部分实例,其实功能需要自行添加:

首先,搭建整个项目的页面结构:

创建 HTML 页面:demo_BGMP.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="utf-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <!-- 上述3个meta标签*必须*放在最前面,任何其他内容都*必须*跟随其后! -->
    <title>后台管理界面</title>

    <!-- Bootstrap -->
    <link href="css/bootstrap.min.css" rel="stylesheet">

    <style>
        body {
            min-width: 250px;
        }
        #left_menu {
            height: 90%;
        }
        #left_menu .navbar-collapse {
            padding-left: 0;
        }
        #left_menu .collapse {
            margin-left: 20px;
        }
        #right_content {
            padding: 0;
        }
        #right_content .row {
            padding: 0;
            margin-left: -13px;
            margin-right: -13px;
        }
        @media (min-width: 768px) {
            #left_menu {
                width: 250px;
                position: absolute;
                top: 50px;
            }
            #right_content {
                height: 877px;
                margin: 53px 0 0 250px;
            }
            #right_content .row {
                padding: 0;
                margin: 0;
            }
            #right_content .breadcrumb {
                margin-left: 2px;
            }
        }
    </style>
    <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
    <!-- WARNING: Respond.js doesn't work if you views the page via file:// -->
    <!--[if lt IE 9]>
    <script src="https://cdn.bootcss.com/html5shiv/3.7.3/html5shiv.min.js"></script>
    <script src="https://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script>
    <![endif]-->

    <script src="../js/jquery-2.1.3.min.js"></script>
    <script src="../js/angular/angular.min.js"></script>
    <script src="../js/angular/route.js"></script>
    <script src="../js/angular/routeParams.js"></script>
    <script src="../js/angular/shallowCopy.js"></script>
    <script src="../js/angular/ngView.js"></script>
    <script src="../js/bootstrap.min.js"></script>
    <script>
        $(function () {
            $("#home_label").click(function (e) {
                e.preventDefault();
                $("li ul", "#menu_col").collapse('hide');
            });
        });
        angular.module('myApp', ["ngRoute"]).controller('myCtrl', function($scope) {
            $scope.message = {
                num : 44
            };

            $scope.searchFun = function () {
                console.log($scope.searchInput);
            };
            $scope.funList = [
                {
                    id: "system_menu",
                    name: "系统功能",
                    iconClass: [
                        "glyphicon glyphicon-cog",
                        "glyphicon glyphicon-chevron-right"
                    ],
                    subFunList: [
                        {
                            id: "sys_log",
                            name: "系统日志",
                            iconClass: [
                                "glyphicon glyphicon-align-left"
                            ],
                            subFunList: [
                                {
                                    id: "log_list",
                                    name: "日志列表"
                                }
                            ]
                        },
                        {
                            id: "user_manager",
                            name: "用户管理",
                            iconClass: [
                                "glyphicon glyphicon-user"
                            ],
                            subFunList: [
                                {
                                    id: "user_list",
                                    name: "用户列表"
                                }
                            ]
                        },
                        {
                            id: "star_manager",
                            name: "会员管理",
                            iconClass: [
                                "glyphicon glyphicon-star-empty"
                            ],
                            subFunList: [
                                {
                                    id: "star_list",
                                    name: "会员列表"
                                }
                            ]
                        },
                        {
                            id: "role_manager",
                            name: "角色设定",
                            iconClass: [
                                "glyphicon glyphicon-check"
                            ],
                            subFunList: [
                                {
                                    id: "role_list",
                                    name: "角色列表"
                                }
                            ]
                        },
                        {
                            id: "auth_manager",
                            name: "权限设定",
                            iconClass: [
                                "glyphicon glyphicon-lock"
                            ],
                            subFunList: [
                                {
                                    id: "auth_list",
                                    name: "权限列表"
                                }
                            ]
                        },
                        {
                            id: "page_manager",
                            name: "界面设置",
                            iconClass: [
                                "glyphicon glyphicon-list-alt"
                            ],
                            subFunList: [
                                {
                                    id: "page_list",
                                    name: "界面列表"
                                }
                            ]
                        }
                    ]
                },
                {
                    id: "product_menu",
                    name: "产品功能",
                    iconClass: [
                        "glyphicon glyphicon-gift"
                    ],
                    subFunList: [
                        {
                            id: "sys_log_1",
                            name: "系统日志",
                            iconClass: [
                                "glyphicon glyphicon-align-left"
                            ],
                            subFunList: [
                                {
                                    id: "log_list_1",
                                    name: "日志列表"
                                }
                            ]
                        },
                        {
                            id: "user_manager_1",
                            name: "用户管理",
                            iconClass: [
                                "glyphicon glyphicon-user"
                            ],
                            subFunList: [
                                {
                                    id: "user_list_1",
                                    name: "用户列表"
                                }
                            ]
                        },
                        {
                            id: "star_manager_1",
                            name: "会员管理",
                            iconClass: [
                                "glyphicon glyphicon-star-empty"
                            ],
                            subFunList: [
                                {
                                    id: "star_list_1",
                                    name: "会员列表"
                                }
                            ]
                        },
                        {
                            id: "role_manager_1",
                            name: "角色设定",
                            iconClass: [
                                "glyphicon glyphicon-check"
                            ],
                            subFunList: [
                                {
                                    id: "role_list_1",
                                    name: "角色列表"
                                }
                            ]
                        },
                        {
                            id: "auth_manager_1",
                            name: "权限设定",
                            iconClass: [
                                "glyphicon glyphicon-lock"
                            ],
                            subFunList: [
                                {
                                    id: "auth_list_1",
                                    name: "权限列表"
                                }
                            ]
                        },
                        {
                            id: "page_manager_1",
                            name: "界面设置",
                            iconClass: [
                                "glyphicon glyphicon-list-alt"
                            ],
                            subFunList: [
                                {
                                    id: "page_list_1",
                                    name: "界面列表"
                                }
                            ]
                        }
                    ]
                },
                {
                    id: "lm_menu",
                    name: "栏目功能",
                    iconClass: [
                        "glyphicon glyphicon-th-list",
                        "glyphicon glyphicon-chevron-right"
                    ],
                    subFunList: [
                        {
                            id: "sys_log_2",
                            name: "系统日志",
                            iconClass: [
                                "glyphicon glyphicon-align-left"
                            ],
                            subFunList: [
                                {
                                    id: "log_list_2",
                                    name: "日志列表"
                                }
                            ]
                        },
                        {
                            id: "user_manager_2",
                            name: "用户管理",
                            iconClass: [
                                "glyphicon glyphicon-user"
                            ],
                            subFunList: [
                                {
                                    id: "user_list_2",
                                    name: "用户列表"
                                }
                            ]
                        },
                        {
                            id: "star_manager_2",
                            name: "会员管理",
                            iconClass: [
                                "glyphicon glyphicon-star-empty"
                            ],
                            subFunList: [
                                {
                                    id: "star_list_2",
                                    name: "会员列表"
                                }
                            ]
                        },
                        {
                            id: "role_manager_2",
                            name: "角色设定",
                            iconClass: [
                                "glyphicon glyphicon-check"
                            ],
                            subFunList: [
                                {
                                    id: "role_list_2",
                                    name: "角色列表"
                                }
                            ]
                        },
                        {
                            id: "auth_manager_2",
                            name: "权限设定",
                            iconClass: [
                                "glyphicon glyphicon-lock"
                            ],
                            subFunList: [
                                {
                                    id: "auth_list_2",
                                    name: "权限列表"
                                }
                            ]
                        },
                        {
                            id: "page_manager_2",
                            name: "界面设置",
                            iconClass: [
                                "glyphicon glyphicon-list-alt"
                            ],
                            subFunList: [
                                {
                                    id: "page_list_2",
                                    name: "界面列表"
                                }
                            ]
                        }
                    ]
                },
                {
                    id: "block_menu",
                    name: "模块功能",
                    iconClass: [
                        "glyphicon glyphicon-calendar",
                        "glyphicon glyphicon-chevron-right"
                    ],
                    subFunList: [
                        {
                            id: "sys_log_3",
                            name: "系统日志",
                            iconClass: [
                                "glyphicon glyphicon-align-left"
                            ],
                            subFunList: [
                                {
                                    id: "log_list_3",
                                    name: "日志列表"
                                }
                            ]
                        },
                        {
                            id: "user_manager_3",
                            name: "用户管理",
                            iconClass: [
                                "glyphicon glyphicon-user"
                            ],
                            subFunList: [
                                {
                                    id: "user_list_3",
                                    name: "用户列表"
                                }
                            ]
                        },
                        {
                            id: "star_manager_3",
                            name: "会员管理",
                            iconClass: [
                                "glyphicon glyphicon-star-empty"
                            ],
                            subFunList: [
                                {
                                    id: "star_list_3",
                                    name: "会员列表"
                                }
                            ]
                        },
                        {
                            id: "role_manager_3",
                            name: "角色设定",
                            iconClass: [
                                "glyphicon glyphicon-check"
                            ],
                            subFunList: [
                                {
                                    id: "role_list_3",
                                    name: "角色列表"
                                }
                            ]
                        },
                        {
                            id: "auth_manager_3",
                            name: "权限设定",
                            iconClass: [
                                "glyphicon glyphicon-lock"
                            ],
                            subFunList: [
                                {
                                    id: "auth_list_3",
                                    name: "权限列表"
                                }
                            ]
                        },
                        {
                            id: "page_manager_3",
                            name: "界面设置",
                            iconClass: [
                                "glyphicon glyphicon-list-alt"
                            ],
                            subFunList: [
                                {
                                    id: "page_list_3",
                                    name: "界面列表"
                                }
                            ]
                        }
                    ]
                },
                {
                    id: "other_menu",
                    name: "其他功能",
                    iconClass: [
                        "glyphicon glyphicon-fire",
                        "glyphicon glyphicon-chevron-right"
                    ],
                    subFunList: [
                        {
                            id: "sys_log_4",
                            name: "系统日志",
                            iconClass: [
                                "glyphicon glyphicon-align-left"
                            ],
                            subFunList: [
                                {
                                    id: "log_list_4",
                                    name: "日志列表"
                                }
                            ]
                        },
                        {
                            id: "user_manager_4",
                            name: "用户管理",
                            iconClass: [
                                "glyphicon glyphicon-user"
                            ],
                            subFunList: [
                                {
                                    id: "user_list_4",
                                    name: "用户列表"
                                }
                            ]
                        },
                        {
                            id: "star_manager_4",
                            name: "会员管理",
                            iconClass: [
                                "glyphicon glyphicon-star-empty"
                            ],
                            subFunList: [
                                {
                                    id: "star_list_4",
                                    name: "会员列表"
                                }
                            ]
                        },
                        {
                            id: "role_manager_4",
                            name: "角色设定",
                            iconClass: [
                                "glyphicon glyphicon-check"
                            ],
                            subFunList: [
                                {
                                    id: "role_list_4",
                                    name: "角色列表"
                                }
                            ]
                        },
                        {
                            id: "auth_manager_4",
                            name: "权限设定",
                            iconClass: [
                                "glyphicon glyphicon-lock"
                            ],
                            subFunList: [
                                {
                                    id: "auth_list_4",
                                    name: "权限列表"
                                }
                            ]
                        },
                        {
                            id: "page_manager_4",
                            name: "界面设置",
                            iconClass: [
                                "glyphicon glyphicon-list-alt"
                            ],
                            subFunList: [
                                {
                                    id: "page_list_4",
                                    name: "界面列表"
                                }
                            ]
                        }
                    ]
                },
            ];
            $scope.breadList = [];
            $scope.clickFun = function (funId) {
                var tempList = [];
                $scope.funList.forEach(function (fun, idx, list) {
                    fun.subFunList.forEach(function (subFun, ind, subList) {
                        if (subFun.id == funId) {
                            tempList.push({
                                id: fun.id,
                                name: fun.name,
                                isActive: false
                            });
                            tempList.push({
                                id: subFun.id,
                                name: subFun.name,
                                isActive: false
                            });
                            tempList.push({
                                id: subFun.subFunList[0].id,
                                name: subFun.subFunList[0].name,
                                isActive: true
                            });
                        }
                    });
                });
                $scope.breadList = tempList;
            }
        }).config(["$routeProvider", function ($routeProvider) {
            console.log($routeProvider)
            $routeProvider.when("/", {template: $("#main_page")})
                .when("/user_manager", {templateUrl: "views/user_list.html"})
                .otherwise({redirectTo:'/'});
        }]);
    </script>
</head>
<body ng-app="myApp" ng-controller="myCtrl">
    <nav class="navbar navbar-default navbar-fixed-top">
        <div class="container-fluid">
            <div class="navbar-header">
                <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
                <a class="navbar-brand" href="#" id="home_label"><span class="glyphicon glyphicon-home"></span>&nbsp;后台管理</a>
            </div>
            <div id="navbar" class="collapse navbar-right navbar-collapse">
                <ul class="nav navbar-nav">
                    <li><a href="#"><span class="badge" style="background-color: #b92c28">{{message.num}}</span></a></li>
                    <li><a href="#about"><span class="glyphicon glyphicon-off"></span>&nbsp;注销</a></li>
                </ul>
            </div><!--/.nav-collapse -->
        </div>
    </nav>

    <nav class="navbar navbar-default" id="left_menu">
        <div class="navbar-default navbar-collapse" id="menu_col">
            <ul class="nav nav-sidebar">
                <li>
                    <div class="input-group" style="margin: 5px 10px;">
                        <input type="text" ng-model="searchInput" class="form-control" placeholder="Search"/>
                        <span class="input-group-btn">
                            <button type="button" ng-click="searchFun()" class="btn btn-default"><span class="glyphicon glyphicon-search"></span></button>
                        </span>
                    </div>
                </li>
                <li ng-repeat="fun in funList">
                    <a href="#{{fun.id}}" data-toggle="collapse"><span class="{{fun.iconClass[0]}}"></span>&nbsp;{{fun.name}} <span class="glyphicon glyphicon-chevron-right pull-right"></span></a>
                    <ul class="nav collapse" id="{{fun.id}}">
                        <li ng-repeat="subFun in fun.subFunList" ng-click="clickFun(subFun.id)"><a href="#!/{{subFun.id}}"><span class="{{subFun.iconClass[0]}}"></span>&nbsp;{{subFun.name}}</a></li>
                    </ul>
                </li>
            </ul>
        </div>
    </nav>

    <div class="container-fluid" id="right_content">

        <div class="breadcrumb ">
            <li ng-repeat="bread in breadList" class="{{bread.isActive ? 'active' : ''}}">
                <span ng-switch="{{bread.isActive}}">
                    <span ng-switch-when="true">{{bread.name}}</span>
                    <span ng-switch-when="false"><a href="#{{bread.id}}">{{bread.name}}</a></span>
                </span>
            </li>
        </div>

        <div ng-view></div>
        <div id="main_page">
            <h2>This is the welcome page!</h2>
        </div>

    </div>
</body>
</html>
功能页面

这里只做一个样本,以用户管理的列表页面为例:
创建 HTML 页面: user_list.html

<div id="user_list_page">
    <div class="row">
        <div class="col-md-6">
            <div class="panel panel-default">
                <div class="panel-heading">普通用户</div>
                <div class="panel-body">
                    <p>Some default panel content here. Nulla vitae elit libero, a pharetra augue. Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
                </div>
                <table class="table table-bordered table-hover table-striped table-responsive">
                    <thead>
                    <tr>
                        <th>#</th>
                        <th>First Name</th>
                        <th>Last Name</th>
                        <th>Username</th>
                    </tr>
                    </thead>
                    <tbody>
                    <tr><td>1</td><td>normal</td><td>Otto</td><td>@mdo</td></tr>
                    <tr><td>2</td><td>normal</td><td>Otto</td><td>@mdo</td></tr>
                    <tr><td>3</td><td>normal</td><td>Otto</td><td>@mdo</td></tr>
                    <tr><td>4</td><td>normal</td><td>Otto</td><td>@mdo</td></tr>
                    <tr><td>5</td><td>normal</td><td>Otto</td><td>@mdo</td></tr>
                    </tbody>
                </table>
            </div>
        </div>
        <div class="col-md-6">
            <div class="panel panel-default">
                <div class="panel-heading">星级用户</div>
                <div class="panel-body">
                    <p>Some default panel content here. Nulla vitae elit libero, a pharetra augue. Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
                </div>
                <table class="table table-bordered table-hover table-striped table-responsive">
                    <thead>
                    <tr>
                        <th>#</th>
                        <th>First Name</th>
                        <th>Last Name</th>
                        <th>Username</th>
                    </tr>
                    </thead>
                    <tbody>
                    <tr class="active"><td>1</td><td>active</td><td>Otto</td><td>@mdo</td></tr>
                    <tr class="success"><td>2</td><td>success</td><td>Otto</td><td>@mdo</td></tr>
                    <tr class="info"><td>3</td><td>info</td><td>Otto</td><td>@mdo</td></tr>
                    <tr class="warning"><td>4</td><td>warning</td><td>Otto</td><td>@mdo</td></tr>
                    <tr class="danger"><td>5</td><td>danger</td><td>Otto</td><td>@mdo</td></tr>
                    </tbody>
                </table>
            </div>
        </div>
    </div>

    <div class="row">
        <div class="col-sm-12">
            <div class="panel panel-default">
                <div class="panel-heading">未认证用户</div>
                <div class="panel-body">
                    <p>Some default panel content here. Nulla vitae elit libero, a pharetra augue. Aenean lacinia bibendum nulla sed consectetur. Aenean eu leo quam. Pellentesque ornare sem lacinia quam venenatis vestibulum. Nullam id dolor id nibh ultricies vehicula ut id elit.</p>
                </div>
                <table class="table table-bordered table-hover table-striped table-responsive">
                    <thead>
                    <tr>
                        <th>#</th>
                        <th>First Name</th>
                        <th>Last Name</th>
                        <th>Username</th>
                    </tr>
                    </thead>
                    <tbody>
                    <tr class="active"><td>1</td><td>active</td><td>Otto</td><td>@mdo</td></tr>
                    <tr class="success"><td>2</td><td>success</td><td>Otto</td><td>@mdo</td></tr>
                    <tr class="info"><td>3</td><td>info</td><td>Otto</td><td>@mdo</td></tr>
                    <tr class="warning"><td>4</td><td>warning</td><td>Otto</td><td>@mdo</td></tr>
                    <tr class="danger"><td>5</td><td>danger</td><td>Otto</td><td>@mdo</td></tr>
                    </tbody>
                </table>
            </div>
        </div>
    </div>

    <div class="row">
        <div class="col-sm-5 col-sm-push-6">
            <nav aria-label="Page navigation" class="pull-right">
                <ul class="pagination">
                    <li>
                        <a href="#" aria-label="Previous">
                            <span aria-hidden="true">&laquo;</span>
                        </a>
                    </li>
                    <li class="active"><a href="#">1</a></li>
                    <li><a href="#">{{message.num}}</a></li>
                    <li><a href="#">3</a></li>
                    <li><a href="#">4</a></li>
                    <li><a href="#">5</a></li>
                    <li>
                        <a href="#" aria-label="Next">
                            <span aria-hidden="true">&raquo;</span>
                        </a>
                    </li>
                </ul>
            </nav>
        </div>
    </div>
</div>
项目目录结构

这里写图片描述

项目实际效果

项目首页效果图
这里写图片描述

项目其他功能性页面效果图如下:
(以用户管理的列表页面为例,点击菜单页的[用户管理])
这里写图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值