当您在表单中有多个下拉列表并希望向其添加数据时,您是应该使用单独的控制器还是将它们全部放在一个控制器下?
.controller("Controller1", ['$scope', function ($scope) {
$scope.dd1 = [
{ id: 1, type: 'test1' },
{ id: 2, type: 'test2' }
];
$scope.dd2 = [
{ id: 1, type: 'test3' },
{ id: 2, type: 'test4' }
];
}]);
OR
.controller("Controller1", ['$scope', function ($scope) {
$scope.dd1 = [
{ id: 1, type: 'test1' },
{ id: 2, type: 'test2' }
];
.controller("Controller2", ['$scope', function ($scope) {
$scope.dd2 = [
{ id: 1, type: 'test3' },
{ id: 2, type: 'test4' }
];
答案 0 :(得分:2)
这取决于。 Angular是关于跨控制器的关注点分离。从应用程序的角度来看,如果下拉相关,我主张将它们保存在同一个控制器下。您不希望创建比Angular应用程序中所需的控制器太多的控制器,因为它可能会使应用程序的可维护性快速复杂化。
答案 1 :(得分:0)
取决于下拉列表的使用情况和所在元素的数量。 如果它是一个重要的菜单,或者你想要在它上面进行更多的交互(添加指令或依赖于它的其他元素),你应该拆分它们。 但是,如果您只想显示数据,并添加/删除菜单选项卡,请将其放在同一个控制器中。