`
赵彦枝
  • 浏览: 50126 次
  • 性别: Icon_minigender_2
  • 来自: 河北
社区版块
存档分类
最新评论

Angular js的路由配置

 
阅读更多

        Angular js的ng-route模板为控制器和视图提供了URL,并将它映射到预先定义的控制器.首先建立一个路由文件并定义一个APP,在这个APP中定义多个页面的控制器,并给出对应的模板。然后$routeProvider进行配置,即可将URL映射到这些控制器和视图.AngularJS支持通过在单个页面上的多个视图的单页应用。要做到这一点AngularJS提供了ng-view 和 ng-template指令,以及 $routeProvider 服务。

     1.   Angular$routeService在ngRoute模块里。需要引入ng-route模块作为依赖.在html引入自定义的路由文件前,还需要引入angular-route.js脚本文件.

 

var app = angular.module('myApp', ['ngRoute']);   //ngRoute为添加的模板依赖
    app.config(['$routeProvider',function($routeProvider){
    $routeProvider
        .when("/",{                                 //定义的路径
            templateUrl: "../views/homePage.html", //对应的页面模板
            controller:"personCtrl"               //每个页面对应的控制器
        })
        .when("/productListPage",{
            templateUrl: "../views/productListPage.html",
            controller:"productListPageCtrl"
        })
        .when("/shoppingCartPage",{
            templateUrl: "../views/shoppingCartPage.html",
            controller:"shoppingCartPageCtrl"
        })
        .otherwise({redirectTo:'/'})  
}]);

     config()为配置函数,$routeProvider是组网址的配置,将它们映射相应的HTML页面或 ng-template.

         2.在controller文件中使用$location对路由进行控制,AngularJS提供了一个服务用以解析地址栏中的URL,也就是$location.通过它你可以访问应用当前路径所对应的路由,以及修改路径和处理导航。代码如下:

 

//controller文件中的代码:
app.controller('personCtrl', function ($scope, $location) {
    $scope.jumpProductListPage = function(){
        $location.path("/productListPage")
    }  
    $scope.jumpShoppingCartPage= function(){
        $location.path("/shoppingCartPage")
    }
});
//以上代码定义了两个跳转页面的函数,使用path()方法会根据括号中的路径找到相应的模板加载到
html视图ng-view中

 

 

 

 

 

 

分享到:
评论

相关推荐

    Angular配置路由Demo

    本文将深入探讨AngularJS中的路由配置及其相关知识点。 首先,AngularJS的路由是通过`ngRoute`模块提供的,该模块包含了一个`$routeProvider`服务,用于配置应用程序的路由规则。要使用`ngRoute`,我们需要在应用...

    Angular1X路由按需加载的简单实现

    4. **配置路由**:在`main.js`或单独的路由配置文件中,使用`$stateProvider`定义状态并指定对应的模块。使用`require.js`的`resolve`属性来延迟加载模块,直到该状态被激活。 ```javascript angular.module('app')...

    Angular 路由demo

    - `app.config()`配置路由,设置状态和视图。 - `app.run()`可能包含了初始化菜单和监听状态变化的逻辑。 - 在HTML模板中,`<ui-view>`标签用于插入对应状态的视图。 - 控制器中,`$state`和`$stateParams`服务用于...

    第3章 Angular-路由.zip

    1. **路由配置**: 在应用程序中,路由是通过`RouterModule`和`Routes`接口定义的。在`app-routing.module.ts`文件中,我们会创建一个`routes`数组,其中包含各个路由的配置对象。每个配置对象至少需要`path`(路径)...

    Angular中路由传值(get传值、动态路由)以及通过js跳转路由(2)

    首先,在路由配置中定义查询参数: ```typescript import { RouterModule, Routes } from '@angular/router'; const routes: Routes = [ { path: 'my-route', component: MyComponent, queryParamMap: ...

    angular js代码食谱(recipes with angular js)

    8. **表单处理**:Angular JS 提供了表单验证和数据提交的机制,如 `ng-model` 绑定表单输入值,`ng-required` 设置必填项,以及 `ng-submit` 处理表单提交。 9. **依赖注入**:Angular JS 自动管理对象间的依赖...

    Angular ngRoute路由例子

    在AngularJS中,ngRoute模块提供了一个简单的API,通过定义`$routeProvider`服务的配置,我们可以设置多个路由规则,每个规则对应一个特定的视图和控制器。 在引入ngRoute模块之前,需要确保已经安装了AngularJS...

    Angular2官方例子包含表单路由http

    在这个例子中,`RouterModule`和`Routes`被用来定义路由配置。每个路由都有一个唯一的路径,对应一个组件。例如: ```typescript const routes: Routes = [ { path: 'heroes', component: HeroesComponent }, { ...

    angulardemo_动态路由以及js跳转路由示例代码.zip

    总结起来,这个压缩包提供了一个关于Angular动态路由和JavaScript路由跳转的实践示例,对于学习和理解Angular路由机制非常有帮助。通过研究这些代码,开发者可以深入理解如何配置和使用Angular的路由功能,以及如何...

    Laravel和 Angular JS开发全栈知乎

    - **路由配置**:设置应用内的路由规则,以便于用户在不同页面之间导航。 - **服务交互**:使用Angular的服务与后端API进行数据交互。 ##### 3.2 后端开发(Laravel) - **环境准备**:安装PHP环境,并使用...

    angular 路由理解

    总的来说,AngularJS的路由系统是构建单页应用的关键部分,`when`方法则提供了灵活的路由配置,帮助我们根据URL来组织和控制应用的视图和逻辑。理解并熟练运用`when`,能够使我们在开发过程中更好地设计和管理应用...

    Angular js教程三

    Angular JS是Google维护的一个开源项目,它基于JavaScript,同时也充分利用了ECMAScript的特性,为开发者提供了丰富的功能和便利。 1. **双向数据绑定**:Angular JS的核心特性之一就是双向数据绑定,它将视图与...

    详解Angular5 路由传参的3种方法

    例如,我们可以使用 `/product` 这种形式的 URL 来传递参数,并在路由配置中使用 `data` 属性来传递参数。 例如,在 JavaScript 代码中,我们可以使用以下代码来传递参数: ```javascript { path: 'product', ...

    Angular 利用路由跳转到指定页面的指定位置方法

    在这种方法中,我们通过在路由配置中添加一个带有哈希(#)的路径来实现目标。首先,在`app.route.ts`中,我们新增一个路径`'detail#readMore'`,并将其指向`NotFoundComponent`。这样做是因为在实际的`...

    Angular JS RequireJS

    Angular JS 是一个强大的前端JavaScript框架,由Google维护,主要用于构建单页面应用(SPA)。它提供了数据绑定、依赖注入、模块化和指令等特性,使得开发人员能够构建出复杂且可维护的用户界面。 RequireJS 是一个...

    Angular js学习视频教程

    同时,了解如何设置路由(Routing)进行页面间的导航,以及如何进行单元测试(Unit Testing)和端到端测试(End-to-End Testing)也是至关重要的。 JavaScript基础是学习AngularJS的前提,因为AngularJS是构建在...

    ionic(angular)之优化路由(路由懒加载,包括js文件和html,css都按需加载)

    首先,我们需要在路由配置中使用`loadChildren`属性来指定懒加载模块。例如,假设我们有一个`PagesModule`模块,其中包含多个页面,我们可以在`app-routing.module.ts`文件中这样配置: ```typescript import { ...

    angular按需加载js

    2. 在主HTML文件中配置RequireJS,设置baseUrl和paths,以及shim配置,以便正确加载Angular和其他依赖。 3. 定义Angular应用,并使用ng-app指令启动应用。 4. 配置Angular UI Router,定义各个状态,每个状态可包含...

    angular-route.js

    1. **分离配置**:为了代码可读性和可维护性,建议将路由配置单独放在一个文件中。 2. **懒加载**:对于大型应用,可以考虑使用懒加载策略,只在需要时加载相应的模板和控制器,以提高应用性能。 3. **命名路由**:...

Global site tag (gtag.js) - Google Analytics