使用按钮处理多个控制器

时间:2015-03-30 17:27:39

标签: javascript angularjs

我有一个包含很多按钮的菜单。每次我点击一个按钮,我都希望显示一个确定的控制器。

我是AngularJs的初学者,我无法找到"代码显示XXXXCtrl"

缺少的代码在这里:

app.controller('menuCtrl', function($scope) {
    $scope.showtest = function(key, val) {
        //display testCtrl
    }

    $scope.showCustomers = function(key, val) {
        //display customersCtrl
    }
});

请在此处查看完整代码:http://plnkr.co/edit/tYFNcYwK8uEJzZGCPQxB?p=preview

一开始我只有customersCtrl,他显示来自customersCtrl的数据,所以{{x.titre}}和其他标签显示数据,但由于我添加了其他控制器,我不知道#39;不知道为什么{{x.titre}}不再被替换

请帮助,我是angularJs的新手,对我来说有点复杂:(

2 个答案:

答案 0 :(得分:1)

一种方法是让你的菜单控制器包含你试图隐藏/显示的两个视图。

<div ng-app="myApp" ng-controller="menuCtrl">
  <button href="#" ng-click="showtest()">display testCtrl</button>
  <button href="#" ng-click="showCustomers()">display customersCtrl</button>
  <div ng-controller="testCtrl" ng-show="showTestView">...</div>
  <div ng-controller="customersCtrl" ng-show="showCustomerView">...</div> 
</div>

然后在你的控制器中,你可以做到

$scope.showtest = function(key, val) {
    $scope.showTestView = true;
}

$scope.showCustomers = function(key, val) {
    $scope.showCustomerView = true;
}

请参阅http://plnkr.co/edit/k6YScPNv6SmxWuG3GIfv?p=preview

答案 1 :(得分:0)

看看$route documentation。页面末尾有一个关于通过路径导航切换控制器的好例子。

您可以特别注意配置$ routeProvider的示例的script.js。

如果有帮助,请告诉我。