AngularJs + angular-ui-router + bootstrap 实现blog基础导航功能

核心代码如下

1.index.html

	<!DOCTYPE html>
<html lang="en" style="height:100%">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="description" content="基础导航实现">
<meta name="author" content="0o晓月メ">
<title>博客</title>
<!-- bootstrap -->
<link href="libs/bootstrap-3.3.5/dist/css/bootstrap.min.css" rel="stylesheet"> <script type="text/javascript" src="libs/jquery-1.9.1.min.js"></script>
<script type="text/javascript" src="libs/bootstrap-3.3.5/dist/js/bootstrap.js"></script>
<!-- less -->
<link href="resources/less/main.less" rel="stylesheet/less" type="text/css">
<script src="libs/less/less.min.js" type="text/javascript"></script>
<!-- angular-->
<script src="libs/angular-ui-router/node_modules/angular/angular.js"></script>
<script src="libs/angular-ui-router/release/angular-ui-router.js"></script> <script src="app/app.js"></script>
</head> <body ng-app="MyApp" style="height:100%" class="main-body">
<div ui-view></div>
</body>
</html>

2.viewport.html

	<div class ="container" style="padding-top: 150px;">
<ul class="nav nav-pills">
<li role="presentation" ng-class="{ active:'home'== currentType }" >
<a ui-sref="app.home" ng-click="changeTab('home')">主页</a>
</li>
<li role="presentation" ng-class="{ active:'article'== currentType }">
<a ui-sref="app.article" ng-click="changeTab('article')">文章</a>
</li>
<li role="presentation" ng-class="{ active:'photo'== currentType }">
<a ui-sref="app.photo" ng-click="changeTab('photo')">相册</a>
</li>
<li role="presentation" ng-class="{ active:'music'== currentType }">
<a ui-sref="app.music" ng-click="changeTab('music')">音乐</a>
</li>
<li role="presentation" ng-class="{ active:'comment'== currentType }">
<a ui-sref="app.comment" ng-click="changeTab('comment')">留言板</a>
</li>
</ul>
</div>
<div ui-view class ="container"></div>

3.app.js

	angular.module('MyApp', ['ui.router'])
.controller('MainController', ['$scope',function($scope) {
console.log('init ctrl');
$scope.currentType = 'home';
$scope.changeTab = function(type){
$scope.currentType = type;
};
}])
.config(function($stateProvider, $urlRouterProvider) {
$urlRouterProvider.otherwise("/app/home");
$stateProvider.state('app', {
url: "/app",
abstract:true,
templateUrl: "app/viewport.html",
controller: 'MainController'
})
.state('app.home', {
url: "/home",
templateUrl: "app/home/home.html"
})
.state('app.article', {
url: "/article",
template: "文章"
})
.state('app.photo', {
url: "/photo",
template: "相册"
})
.state('app.music', {
url: "/music",
template: "音乐"
})
.state('app.comment', {
url: "/comment",
template: "留言板"
})
});

项目github地址

https://github.com/FinalElysion/Navigation

AngularJs + angular-ui-router + bootstrap 实现blog基础导航功能的更多相关文章

  1. AngularJS 使用 UI Router 实现表单向导

    Today we will be using AngularJS and the great UI Router and the Angular ngAnimate module to create ...

  2. [转]AngularJS 使用 UI Router 实现表单向导

    本文转自:http://www.oschina.net/translate/angularjs-multi-step-form-using-ui-router 今天我们将使用AngularJs和伟大的 ...

  3. angular ui.router 路由传参数

    angular已经用了一段时间了,最近在做路由,做一下笔记. 路由跳转的时候进行穿参 ui.router方式 <a ui-sref="edit({id:5})"> 编辑 ...

  4. 规范 : angular ui router path & params

    在seo文章中提到url的path 必须是 why-us,而不是whyUS 所以定了规范,所有的path 必须why-us path ?后尾的是用来filter的,所以可以WhyUs 如果是不需要给s ...

  5. angular 的ui.router 定义不同的state 对应相同的url

    Angular UI Router: Different states with same URL? The landing page of my app has two states: home-p ...

  6. [转]AngularJS+UI Router(1) 多步表单

    本文转自:https://www.zybuluo.com/dreamapplehappy/note/54448 多步表单的实现   在线demo演示地址https://rawgit.com/dream ...

  7. Angular -ui - BootStrap组件的解释以及使用

    关于UI BootStrap UI BootStrap 是angularUI团队用纯粹angularJS语法编写的Bootstrap组件. 1. 关于ng-router(angular-router. ...

  8. angularjs ngRoute和ui.router对比

    ngRoute模块是angularjs自带的路由模块,ui.router是一个第三方路由模块,接下来将对两者进行一个对比: ng-router(angular-router.js) ng-view n ...

  9. angular : $location & $state(UI router)的关系

    次序:angular 的 location会先跑 $rootScope.$on("$locationChangeStart", function (scope, newUrl, o ...

随机推荐

  1. LNMP1.3一键安装Linux环境,配置Nginx运行ThinkPHP3.2

    LNMP1.3一键安装Linux环境,配置Nginx运行ThinkPHP3.2 你是否遇见过:安装LNMP1.3环境后,运行ThinkPHP 3.2,只能打开首页,不能访问控制器,报404错误. 按照 ...

  2. 学习笔记TF010:softmax分类

    回答多选项问题,使用softmax函数,对数几率回归在多个可能不同值上的推广.函数返回值是C个分量的概率向量,每个分量对应一个输出类别概率.分量为概率,C个分量和始终为1.每个样本必须属于某个输出类别 ...

  3. 用JS添加和删除class类名

    下面介绍一下如何给一个节点添加和删除class名 添加:节点.classList.add("类名"): 删除:节点.classList.remove("类名") ...

  4. VBS

    1.msgbox脚本显示回车 语法:msgbox"123"&vbcrlf&"456"

  5. web 直播&即时聊天------阿里云、融云(二)

    上一篇简要主要介绍了融云制作聊天室的基本方法,这次基本属于对上一篇的补充以及进阶...^_^... (ps:吐槽一下,加了三个融云的线下qq群,全部没人解决问题,也不知道建此群的意义,若是民间的话就当 ...

  6. 连续分段累计器FPGA实现的探讨

  7. OpenStack dashboard界面操作 实现登陆虚拟机并通信

    1.创建项目,点击"创建项目" (1).填写项目信息 (2).添加与之关联的项目成员 (3).点击"配额",为用户在平台上分配一个操作的空间,便于用户创建网络, ...

  8. 关于jQuery表单选择中prop和attr的区别。

    今天用jQuery学习表单这一章节的内容,再次遇到表单全选时,不能进行第二次全选的情况.反复查看测试仍然找不到是什么原因.后来在网上查到原来是jQuery1.6以后的版本用到的是prop.用attr的 ...

  9. elasticsearch 2.0+ 安装 Marvel

    Marvel 2.0+ Compatible with the latest versions of Elasticsearch and Kibana Step 1: Install Marvel i ...

  10. Spring 5.0.0.RC1 - CORS Support 【译文】

    3 CORS支持 3.1 介绍 出于安全考虑,浏览器禁止对当前源之外的资源进行AJAX调用.例如,当你在一个标签页检查你的银行账户时,你可以在另一个标签页打开evil.com的网站.在evil.com ...