最后编辑:对于那些使用棱角分明材质的人来说,不要放一个像这样的视图
<md-content layout-padding="">
<div ui-view="addOppo"></div>
</md-content>
你必须直接做
<md-content ui-view="addOppo" layout-padding=""> </md-content>
为什么?因为这会破坏你的控制器功能
这是我的问题,AddClientController没有加载,所以视图加载但不是我的控制器。名称很好,我在应用程序的另一部分使用它,它的工作原理。但是当我想在他的视图中重新使用addClient控制器时,只加载了视图。我真的不明白为什么ui-router不加载它。提前谢谢。
function getStates() {
return [
{
state: 'dashboard.addOpportunite',
config: {
url: '/addOpportunite',
views: {
'@': {
templateUrl: 'app/commerciaux/addOpportunite/addOpportunite.html',
controller: 'AddOpportuniteController',
controllerAs: 'vm',
},
'addOppo@dashboard.addOpportunite': {
templateUrl: 'app/clients/add/addClient.html',
controller: 'AddClientController',
controllerAs: 'vm2',
}
},
title: 'Ajout Opportunite',
ncyBreadcrumb: {
label: 'Ajout Opportunite'
}
}
}
];
}
“为什么你说控制器没有加载?你怎么知道这个?” 我在addClient.html中有一个表单,而某些console.log没有出现。
编辑,我有一部分addOpportunite.html:
<md-sidenav class="md-sidenav-right" md-component-id="right" md-whiteframe="4">
<md-toolbar class="md-theme-indigo">
<h1 class="md-toolbar-tools">Sidenav Right</h1>
</md-toolbar>
<md-content layout-padding="">
<div ui-view="addOppo"></div>
<md-button ng-click="vm.closeRightMenu()" class="md-primary">
Close Sidenav Right
</md-button>
</md-content>
</md-sidenav>
我终于发现我的控制器被调用但现在的主要问题是2控制器使用相同的命名函数,所以子视图控制器不会调用他的函数而是父函数。(例如:我有{ {1}}最后一个问题,实现函数与父控制器函数明显区别的最佳方法是什么?重命名?控制器为什么?我实际上是基于john papa的hotowel我的开发但是我没有真正看到他的风格指南我的问题的提示。我可以在哪里找到这个案例的另一个好的风格指南?