我在我的 Angularjs 中使用 Controller ,它从服务器一个一个地获取问题,我希望在特定条件下这个 Controller 应该调用一个路由提供者,它应该用 templateUrl 改变我当前的 View 并放入一个指令
我的问题是我可以在 Controller 而不是模块中调用路由提供者
这是我的 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 条件下创建 Controller ,它不起作用
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 的值,不如定义另一个路由。然后你可以简单地切换路由。
要更改路线/ View ,您需要更新路径。您可以使用 $location service 执行此操作.
参见 AngularJS : How do I switch views from a controller function?
关于javascript - 我可以在angular js asp.net mvc中调用Controller中的Route Provider服务吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27863350/