zoukankan      html  css  js  c++  java
  • AngularJS路由跳转

    AngularJS是一个javascript框架,通过AngularJS这个类库可以实现目前比较流行的单页面应用,AngularJS还具有双向数据绑定的特点,更加适应页面动态内容。

    所谓单页面应用就是在同一个页面动态加载不同的内容,而这里的“跳转”可以理解为是局部页面的跳转。

    AngularJS是通过改变location地址来实现加载不同的页面内容到指定位置,下面是一个简单应用AngularJS路由来实现页面“跳转”的实例:

     

    使用app.config来定义不同的location地址加载不同的页面,并拥有独立的控制器;

    var app = angular.module('MyApp', ['ngRoute']);
            app.config(function ($routeProvider) {
                $routeProvider
                    .when('/', {        //  '/'表示页面初始加载内容;
                        controller: 'homeCtrl',   //控制器
                        templateUrl: '../view/home.html'  //显示的内容
                    })
                    .when('/reservation',{      //表示地址结尾为reservation时加载的内容;
                        controller: 'reservationCtrl',      
                        templateUrl: '../view/reservation.html'
                    })
            });

     使用ng-view来定义动态内容加载的位置;

    <!DOCTYPE html>
    <html lang="en" ng-app="MyApp">
        <head>
            <script src="../angular.js"></script>
            <script src="../angular-route.min.js"></script>
       
            <script src="../js/main.js"></script>
            <script src="../js/homeController.js"></script>
            <script src="../js/reservationController.js"></script>
    
            <meta charset="UTF-8">
            <title></title>
        </head>
    <body>
    <div ng-view>
    <!-- 此处为动态加载区域 -->
    </div>
    </body>
    </html>
     上面提到,每个页面都会有一个独立的控制器,加载页面的同时会执行控制器中的函数;
    app.controller('homeCtrl',function($scope,$location){    //页面的控制函数;
        $scope.goToUrl=function(path) {        //此方法可以改变location地址;
            $location.path(path);
        }
    });
      上述控制器所对应的html页面为:
    <div id="header">
        <p>订餐</p>
    </div>
    <div class="body">
        <button ng-click="goToUrl('/reservation')" class="bigButton">帮订餐</button>
        <button ng-click="goToUrl('/showList')" class="bigButton">看订单</button>
    </div>
     ng-click方法为点击事件执行指定函数方法。
     
    转载自本人ITeye链接: http://xiaozhuang0706.iteye.com/blog/2263786
  • 相关阅读:
    leetcode_09_Palindrome Number (easy)
    JQuery与JavaScript与Ajax三者的区别与联系
    Blockly常用函数
    JavaWeb中四大域对象
    Thymeleaf知识
    列表、字典、元组、集合的区别
    Spring Boot拦截器
    AWS路由表
    Android调试工具DDMS的使用详解
    Android 列表单选对话框
  • 原文地址:https://www.cnblogs.com/BHfeimao/p/6497073.html
Copyright © 2011-2022 走看看