我可以在 angular js asp.net mvc 中调用 Controller 中的 Route Provider 服务吗

Can I call Route Provider service in Controller in angular js asp.net mvc

我在我的 Angularjs 中使用控制器,它从服务器一个一个地获取问题,我希望在特定条件下这个控制器应该调用一个 routeprovider,它应该用 templateUrl 改变我当前的视图并放入一个指令

我的问题是我可以在控制器而不是模块中调用路由提供程序

这是我的 CreateController

var CreateController = ['$scope', '$http', function ($scope, $http) {
$scope.model = {

    };
................>

.................>
    $scope.NextQuestion = function () {

        $http.post('/Testing/NextQuestion', {

            ........................>

        }).success(function (newdata) {
            $scope.model = newdata;
            var inccomplevel = $scope.model.servercomplevel;
            if (qId == 10) {
                  here i need the code for routeProvider and directive please provide me help
            }
......................>
    }];

我在 app.js 文件中设置了路由提供程序,它可以正常工作

这是 app.js 的代码,当我喜欢它时,它可以工作,当我改变路线提供商的代码时

在 if qId == 10 条件下的创建控制器那里不起作用

var app = angular.module('app', ['ngRoute']);
app.controller('CreateController', CreateController);

    app.config(function ($routeProvider) {
        $routeProvider
        .when('/',
        {
            templateUrl: 'Partials/TestCompleted.html',
            controller: 'AppCtrl'
        })
        .otherwise({ redirectTo: '/' });
    });
    app.controller("AppCtrl",function ($scope) {
        $scope.newmodel = {

        }
    });

与其尝试更改路由上 templateUrl 的值,不如定义另一个路由。然后你可以简单地切换路由。

要更改 route/view,您需要更新路径。您可以使用 $location service 执行此操作。

AngularJS : How do I switch views from a controller function?