角度路由无法按预期方式运行

时间:2016-06-17 02:52:33

标签: html angularjs

我正在使用Angular并尝试路由到某个页面。它可以在任何地方工作,但在下面的代码中,当我尝试路由时,我看到URL移动到所需的页面但返回到触发它的同一页面。我不确定为什么它会像这样。

这是我的HTML,我称之为方法

<button  ng-click="proposalForm()" >Request</button>

在我的controller.js中,我只是想尝试路由到另一个页面。当我单击该按钮时,它会路由到提案页面,但会快速返回到我触发此操作的位置。我错过了吗?它适用于所有其他地方。

$scope.proposalForm = function() {
    $location.path('/proposal');
}

当我尝试使用datatarget访问它时,它包含JSP但是当我尝试完全路由到不同的页面时,它不起作用。有没有其他方法,我可以将它路由到不同的JSP。

这是我的路由器代码,它有正确的提案路径,我不确定它是否由于某种原因路由到默认值

&#13;
&#13;
Bid.config(function($routeProvider) {
    .when('/proposal', {
		templateUrl : '/Bid/proposal',
		controller : 'homeController'
	}).otherwise({
		redirectTo : '/'
	});
});  
&#13;
&#13;
&#13;

2 个答案:

答案 0 :(得分:1)

在项目中使用库  <script data-require="ui-router@*" data-semver="0.2.8" src="http://angular-ui.github.io/ui-router/release/angular-ui-router.js"></script>

然后是config.js

.state('proposal', {
          url: '/proposal',
templateUrl: 'templates/proposal.html',
controller: 'NewCtrl'
        });

    $urlRouterProvider.otherwise('/auth/login');

并在控制器中

app.controller('NavCtrl', function ($scope, $location, $state, Post, Auth) { 

    $scope.create = function() {      
      $state.go("proposal"); 
    };
  });

和app.js

var abc= angular.module('abc', [
       'ui.router'

]);

答案 1 :(得分:0)

如果要使用AngularJS创建单页应用程序(SPA),则应使用$ state服务,而不是$ location服务。 无论如何,从语法上讲,代码似乎是正确的,也许你可以添加路由器代码?

相关问题