html頁面代碼
<body ng-app="myApp"> <div ui-view></div> <div ui-view="login"></div> <div ui-view="enroll"></div></body>
需要引用的ui.router.js文件
<script src="angular-ui-router.js"></script>
app.js
將UI-Router作為web應(yīng)用的依賴,注入到主程序:
url:url選項將會為該應(yīng)用的狀態(tài)指定一個URL基于用戶瀏覽該應(yīng)用所在的狀態(tài)(地址顯示鏈接)。這樣當(dāng)在瀏覽該應(yīng)用的時候便能實現(xiàn)深度鏈接的效果。
var myApp = angular.module('myApp', ['ui.router']);myApp.config(['$stateProvider', '$urlRouterProvider', routeConfig]);function routeConfig($stateProvider, $urlRouterProvider) {$urlRouterProvider.otherwise('');$stateProvider.state('competition', {url: '/competition',templateUrl: '/competition.html',controller: 'competitionController'}).state('competition.detail', {url: '/competition-detail',templateUrl: '/competition-detail.html',controller: 'competitionDetailController'}).state.('competition.enrollForm',{url: '/competition.enrollForm',templateUrl: 'competition-enrollFrom.html',controller: 'enrollFromController'}).state.('competition.comments',{url: '/competition-comments',templateUrl: 'competition-comments.html',controller: 'commentsController'}).state('competition.login',{url: '/competition-login',views: {'login@': {templateUrl: 'competition-login.html',controller: 'loginController'}}}).state('competition.enroll',{<br> url: '/competition-enroll',<br> views: {<br> 'enroll@': {<br><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"> templateUrl: 'competition-enroll.html',<br></em></em></em></em></em><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"> controller: 'enrollController'<br></em></em></em></em></em></em><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"> }<br></em></em></em></em></em></em></em><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"> }<br></em></em></em></em></em></em></em></em><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"><em id="__mceDel"> })<br></em></em></em></em></em></em></em></em></em><em id="__mceDel">}</em>需要注意的是:ui.router使用的是$stateProvider,ngRoute使用的是$routeProvider。
$state.go
$state.go(to, [,toParams],[,options])
形參to是string類型,必須,使用"^"或"."表示相對路徑;
形參toParams可空,類型是對象;
形參options可空,類型是對象,字段包括:location為bool類型默認true,inherit為bool類型默認true, relative為對象默認
$state.$current,notify為bool類型默認為true, reload為bool類型默認為false
$state.go('photos.detail')
$state.go('^')到上一級,比如從photo.detail到photo
$state.go('^.list')到相鄰state,比如從photo.detail到photo.list
$state.go('^.detail.comment')到孫子級state,比如從photo.detail到photo.detial.comment
以上所述是小編給大家介紹的AngularJs中ui.route的簡單應(yīng)用,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對武林網(wǎng)網(wǎng)站的支持!
新聞熱點
疑難解答