我下面這個教程給予路由控制器優先,一切都很順利:http://scotch.io/tutorials/javascript/single-page-apps-with-angularjs-routing-and-templating在AngularJS
除了我$scope.message
正在改變罰款和/contact
,同時增加在完全相同的方式一個新的作用域($scope.prodoc
)不加工。相反,它會在每個頁面上顯示mainController作用域。
這裏有三個控制器:
calculatorApp.controller('aboutController', function($scope, $http) {
//define the hardware data
$scope.prodoc = 'companyb';
$scope.message = 'Look! I am an about page.';
});
calculatorApp.controller('contactController', function($scope, $http) {
$scope.prodoc = 'companya';
$scope.message = 'Contact us! JK. This is just a demo.';
});
// create the controller and inject Angular's $scope
calculatorApp.controller('mainController', function($scope, $http) {
//define the hardware data
$scope.prodoc = 'sdf';
// create a message to display in our view
$scope.message = 'Everyone come and see how good I look!';
body標籤是在<body ng-controller="mainController">
我猜測的mainController
正在採取優先,因此不更新每個路由控制器。
我該如何強制它採取路線特定值?
編輯: 這裏的路由器配置:
calculatorApp.config(function($routeProvider) {
$routeProvider
// route for the home page
.when('/', {
templateUrl : 'pages/home.html',
controller : 'mainController'
})
// route for the about page
.when('/about', {
templateUrl : 'pages/about.html',
controller : 'aboutController'
})
// route for the contact page
.when('/contact', {
templateUrl : 'pages/contact.html',
controller : 'contactController'
});
});
雖然我實際上沒有任何的模板來顯示。我只需要爲數據(prodoc
)
你能告訴模板? –
和'$ routeProvider'配置? –
@IlanFrumer - Mah nishma。我添加了路由。該模板可以忽略不計,因爲我不需要任何視圖的路由。僅將數據傳遞到主控制器。我做錯了嗎? – itamar