AngularJS之頁面跳轉(zhuǎn)Route實例代碼
AngulagJs的頁面使用Route跳轉(zhuǎn)
1.除了引用AngularJs.js外,還要引用路由JS, "~/Scripts/angularjs/angular-route.js"
2.通過$routeProvider定義路由,示例
var testModule = angular.module('testModule', ['ngRoute']); testModule.config(['$routeProvider', function ($routeProvider) { $routeProvider.when('/2', {//'/2'定義的路由路徑,以后通過此路徑訪問,通常定義為短路徑 templateUrl: "/home/index2",//"/home/index2"是路由實際訪問的路徑,可以是asp.net mvc的訪問路徑(如此例),也可是具體的頁面路徑,如“test/test.html" controller:'testController'//路由跳轉(zhuǎn)的controller,后面必須定義此控制器 }); $routeProvider.when('/3', { templateUrl: "/home/index3", controller:'testController' }) }]);
3.使用路由跳轉(zhuǎn),結(jié)合ng-view做spa
3.1 在JS中使用$location進行跳轉(zhuǎn),如示例,在需要的時候調(diào)用goToIndex2即可
testModule.controller("testController", ["$scope", "$location", function ($scope, $location) { $scope.goToIndex2 = function () { $location.path("/2") } }]);
3.2 在html代碼中使用href="#path"來進行跳轉(zhuǎn)
<html > <head> <meta name="viewport" content="width=device-width" /> <title>Index1</title> @Styles.Render("~/Content/css/base") @Scripts.Render("~/script/base") <script src="~/scripts/ngmoudle/app.js"></script> </head> <body> <div ng-app="testModule" ng-controller="testController"> <header> <h1>This is Index1</h1> <button type="button" class="btn btn-default" ng-click="goToIndex2()">Index2</button> <a href="#/3" class="btn btn-default">Index3</a><!--通過heft="#path"方式進行跳轉(zhuǎn)--> <a href="#/2" class="btn btn-default" >Index2</a> </header> <div ng-view> </div> <footer>PAGE FOOTER</footer> </div> </body> </html>
4.關(guān)于Angularjs版本不得不說的問題(追加部分),“/"變”%2F”問題
新的項目直接使用Nuget獲取Angularjs后,發(fā)現(xiàn)按照以上的寫法,不能跳轉(zhuǎn)了,表現(xiàn)癥狀為 <a href="#/2">Index2</a> 點擊之后,發(fā)現(xiàn)瀏覽器地址變?yōu)椤?%22”,“/"變”%2F”導致路由不能跳轉(zhuǎn)了,一頓猛查和調(diào)試,才發(fā)現(xiàn)AngularJs自1.6版本后對地址做了特別處理 知道原因后,解決問題也很簡單,在Angular中聲明用回舊有方式即可。
可參見 http://stackoverflow.com/questions/41211875/angularjs-1-6-0-latest-now-routes-not-working
testModule.config(['$locationProvider', function($locationProvider) { $locationProvider.hashPrefix(''); }]); testModule.config(['$locationProvider', function($locationProvider) { $locationProvider.hashPrefix(''); }]);
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
- AngularJS利用Controller完成URL跳轉(zhuǎn)
- AngularJS路由實現(xiàn)頁面跳轉(zhuǎn)實例
- angularjs項目的頁面跳轉(zhuǎn)如何實現(xiàn)(5種方法)
- Angular 頁面跳轉(zhuǎn)時傳參問題
- Angular中$state.go頁面跳轉(zhuǎn)并傳遞參數(shù)的方法
- angular4 如何在全局設(shè)置路由跳轉(zhuǎn)動畫的方法
- AngularJS實現(xiàn)單一頁面內(nèi)設(shè)置跳轉(zhuǎn)路由的方法
- AngularJS頁面帶參跳轉(zhuǎn)及參數(shù)解析操作示例
- AngularJS實現(xiàn)頁面跳轉(zhuǎn)后自動彈出對話框?qū)嵗a
- AngularJS實現(xiàn)的錨點樓層跳轉(zhuǎn)功能示例
相關(guān)文章
Angular中點擊li標簽實現(xiàn)更改顏色的核心代碼
這篇文章主要介紹了Angular中點擊li標簽實現(xiàn)更改顏色的核心代碼,需要的朋友可以參考下2017-12-12angular6的table組件開發(fā)的實現(xiàn)示例
這篇文章主要介紹了angular6的table組件開發(fā)的實現(xiàn)示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-12-12詳解AngularJS中$http緩存以及處理多個$http請求的方法
$http 是 AngularJS 中的一個核心服務(wù),用于讀取遠程服務(wù)器的數(shù)據(jù),通過本文給大家介紹AngularJS中$http緩存以及處理多個$http請求的方法,希望的朋友一起學習吧2016-02-02Angular?Ngrx?Store應用程序狀態(tài)典型示例詳解
這篇文章主要為大家介紹了Angular?Ngrx?Store應用程序狀態(tài)典型示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪2023-07-07AngularJS入門教程之數(shù)據(jù)綁定原理詳解
這篇文章主要介紹了AngularJS數(shù)據(jù)綁定原理,較為詳細的分析了AngularJS數(shù)據(jù)綁定的原理、使用技巧與相關(guān)注意事項,需要的朋友可以參考下2016-11-11angularJs自定義過濾器實現(xiàn)手機號信息隱藏的方法
今天小編就為大家分享一篇angularJs自定義過濾器實現(xiàn)手機號信息隱藏的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-10-10