我可以在 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?
我在我的 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?