gpt4 book ai didi

javascript - 一个 View 的多个 Controller angularjs

转载 作者:行者123 更新时间:2023-11-29 10:15:26 24 4
gpt4 key购买 nike

我想知道是否可以使用 angluarjs 将多个 Controller 用于单个 url View ,我找不到太多关于此的文档。我想在所有页面上使用一个 Controller 来切换页眉标题,但有些页面已经包含一个 Controller

应用程序.js

subscriptionApp.config(['$routeProvider',function($routeProvider){
$routeProvider.
when('/billinginfo',{templateUrl:'views/billing-info.html', controller:'billingInfoController'}).
when('/orderreview',{templateUrl:'views/order-review.html', controller:'billingInfoController'}).
when('/subscribed',{templateUrl:'views/subscribed.html', controller:'subscribedTitle'}).

//EXAMPLE: HOW COULD I ADD TWO CONTROLLERS TO SAME PAGE??? THIS DOES NOT WORK
when('/subscribe',{templateUrl:'views/subscribe.html', controller:'subscriptionController', 'testControllerTitle'}).

when('/unsubscribed',{templateUrl:'views/cancelconfirm.html', controller:'unsubscribedTitle'}).
when('/redirectBack',{templateUrl:'views/redirect-to-app.html'}).
when('/redirectHandler',{templateUrl:'views/redirect-handler.html',controller:'redirectController'}).
when('/error',{templateUrl:'views/error.html', controller:'messageController'}).
otherwise({redirectTo:'/subscribe'});
}]);

编辑我正在尝试为每个页面 View 添加一个标题 Controller :

function testControllerTitle($rootScope, $scope, $http) { $rootScope.header = "Success!"; }

如果我将这个 Controller 添加到还没有 Controller 的页面上,它就可以工作,如果有另一个 Controller ,我就无法完成这项工作。

<h1 ng-bind="header"></h1>

最佳答案

是的, Controller 和模板是独立的,检查这个http://jsbin.com/wijokuca/1/

var app = angular.module("App", ['ngRoute']);

app.config( function ( $routeProvider ) {
$routeProvider
.when('/a', {templateUrl: 'this.html', controller: "aCtrl"})
.when('/b', {templateUrl: 'this.html', controller: "bCtrl"})
.when('/c', {templateUrl: 'that.html', controller: "bCtrl"})
.otherwise({redirectTo: '/a'});
});

app.controller('aCtrl', function ($scope) {
$scope.all = [1,2,3];
});

app.controller('bCtrl', function ($scope) {
$scope.all = [4,5,6];
});

关于javascript - 一个 View 的多个 Controller angularjs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23139055/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com