首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >$state.go不像我在angular.js ui-路由器中所期望的那样工作。

$state.go不像我在angular.js ui-路由器中所期望的那样工作。
EN

Stack Overflow用户
提问于 2015-03-15 23:51:31
回答 1查看 1.1K关注 0票数 1

我有一个包含ui路由器子视图的主/详细表单。

技术1 (工作)

当用户单击编辑按钮时,我使用ui-sref激活编辑面板,这很好。

当我第一次或以后点击编辑按钮时,我的面板被激活了,一切都很好。

代码语言:javascript
复制
<a ui-sref=".edit({id: row.entity[\'id\']})"  class="btn btn-default btn-xs">Edit</a> 

技术2(失败)

我决定尝试在控制器中使用基本相同的格式进行状态转换。

这仅在用户第一次单击面板时才起作用,即在面板被激活之前。随后的单击会导致此错误失败。

代码语言:javascript
复制
// Only Works for the 1st Click
$state.go('.edit', { id: id });

技术3 (作品)

我能够让它通过这条路工作,现在它适用于第一次点击和随后的点击。

代码语言:javascript
复制
// All ways works
$state.go('skill.edit', { id: id });

为什么技术2失败?

显然,我已经用技术2切换到了某种低级状态,但我不知道如何正确地使用该技术?

下面是从技术2到技术2的屏幕截图,从第一次点击之前到第一次点击之后到第二次点击之后。

EN

回答 1

Stack Overflow用户

发布于 2015-03-16 00:23:05

我认为第一个方法有效,因为所有这些ui-sref值都是在状态更改之前计算出来的,即它们都是相对于父状态(skill)的。

当您尝试在控制器中执行此操作时,一旦状态已更改为skill.edit,您将告诉它进入相对.edit状态,该状态将解析为skill.edit.edit

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29067664

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档