Javascript 从未执行子状态控制器
我试着把我的脑袋绕过去,我试着实现以下逻辑:Javascript 从未执行子状态控制器,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我试着把我的脑袋绕过去,我试着实现以下逻辑: 如果没有状态,请转到状态/项目 处理/items时,从服务器检索“items”列表 收到“项目”后,转到状态/items/:item,其中“item”是服务器返回的项目列表中的第一个 在状态/items/:item呈现一个项目列表,其中相应的“item”被“高亮显示”(高亮显示部分不包括在我的代码中) 但是,不执行子状态的“控制器”功能。我打赌这是很明显的事情 这里是js(我在plunkr上也有它和附带的模板) Plunk:将此添加到您的项目中状
- 如果没有状态,请转到状态/项目
- 处理
时,从服务器检索“items”列表/items
- 收到“项目”后,转到状态
,其中“item”是服务器返回的项目列表中的第一个/items/:item
- 在状态
呈现一个项目列表,其中相应的“item”被“高亮显示”(高亮显示部分不包括在我的代码中)/items/:item
Plunk:将此添加到您的
项目中
状态:
模板:“”,
UI路由器中的状态是分层的,它们的视图也是分层的。当前的是项的子项,它的模板也是。因此,子模板希望有一个父ui视图
加载到其中
如果希望让子视图替换父视图,请将items.current
的配置更改为以下内容:
{
url: '/:id',
views: {
"@": {
templateUrl: 'item.html',
controller: function($scope, items) {
// ...
}
}
}
}
将此添加到您的
项目中
状态:
模板:“”,
UI路由器中的状态是分层的,它们的视图也是分层的。当前的是项的子项,它的模板也是。因此,子模板希望有一个父ui视图
加载到其中
如果希望让子视图替换父视图,请将items.current
的配置更改为以下内容:
{
url: '/:id',
views: {
"@": {
templateUrl: 'item.html',
controller: function($scope, items) {
// ...
}
}
}
}
你的扑救不完整,根本没有显示。@Chandermani这是问题的关键,有点。你的扑救不完整,根本没有显示。@Chandermani这是问题的关键,有点。好吧,这完全有效(两种变体)。非常感谢!对于刚接触angularjs和AngularUI的人来说,这似乎不是很明显。好吧,这完全有效(两种变体)。非常感谢!但对于刚接触angularjs和AngularUI的人来说,这似乎不是很明显。。