- 条件:AngularJS V1.0.3,Angular UI路由器V0.2.10
- 我想实现的是,索引html页面会动态转发到登录html,然后点击登录按钮,它会重新转发到主页
-
由于我的声誉不够,所以我不能附上图片。在这里,我将附上我的演示代码。3.1:index.html
<!-- StateProvider --> <div ng-controller="demoController"> <button ng-click="goToHomePage()">Go To Home Page</button> </div> <!-- Load extra js --> <script type="text/javascript" src="js/lib/jquery/jquery-2.1.3.js"></script> <script type="text/javascript" src="js/lib/angular/angular.js"></script> <script type="text/javascript" src="js/lib/angular/angular-route.js"></script> <script type="text/javascript" src="js/lib/angular/angular-sanitize.js"></script> <script type="text/javascript" src="js/lib/angular/angular-animate.js"></script> <script type="text/javascript" src="js/lib/angular-ui/angular-ui-router.js"></script> <script type="text/javascript" src="js/appDemo.js"></script> <script type="text/javascript" src="js/service/DemoService.js"></script> <script type="text/javascript" src="js/controller/DemoController.js"></script> </body>
3.2:appDemo.js
var app = angular.module("demo", ['ui.router']); app.config(['$stateProvider', '$urlRouterProvider', function($stateProvider, $urlRouterProvider) { //$urlRouterProvider.otherwise("/landing/dashboard"); $urlRouterProvider.otherwise("/login"); //$urlRouterProvider.when('/landing/influencers', '/landing/influencers/dashboard/market-view'); $stateProvider .state('home', { url: '/home', templateUrl: 'view/home.html', controller: function(){ alert("123"); } }) .state('login', { url: '/login', templateUrl: 'view/login.html' }); }]); app.run(['$state', function ($state) { alert("running..."); /*$state.transitionTo('home');*/ $state.go('home'); }]);
3.3:DemoController.js
app.controller('demoController', function($scope, $state, demoService){ $scope.goToHomePage = function(){ alert('AAA'); $state.go("home"); } });
当我点击"转到主页"按钮时,什么也没发生,只是提示了一条消息"AAA",该消息设置在goToHomePage功能中。
知道如何正确转发到主页吗?
任何建议都将不胜感激。
您的angularjs
版本太旧,与angular-ui-roter
不兼容。
将角度脚本版本从1.0.3
更新为1.3.15
将解决您的问题。