【发布时间】:2016-10-23 17:15:03
【问题描述】:
我正在开发一个 chrome 扩展,它在 google.com.au 中注入一些内容脚本。然后,该内容脚本会加载一个基于 Angular ui 路由器的应用程序,该应用程序具有一个小界面。我正在使用没有 url 的 $state。所以只有 templateUrl 和控制器。问题是当我使用 $state.go('home') 转到我的小应用程序的主页时,$state.go 在内部更改了位置或 URL,例如 (1) :- https://www.google.com.au/#q=hello
到 (2) :- https://www.google.com.au/#/q=hello
(q后面多了一个/)
第二个网址无效,它将我重定向回 google.com.au。
此外,值得一提的是 - 当我将同一个应用程序注入到链接的搜索结果页面中时,该应用程序运行良好,其 url 中没有任何 #。
另外,我尝试了$state.go 和$state.transitionTo 之类的变体,第三个参数为{location:false ....}。但它仍然会像上面一样更改网址。
我被卡住了,无法继续前进。
这是问题的截屏视频。
http://screencast.com/t/ZrBtlkU3z
任何帮助将不胜感激。
提前致谢。
更新
这是一个包含上述问题的示例 chrome 扩展。
https://Vikasg7@bitbucket.org/Vikasg7/example-app.git
请将此作为解压扩展加载并尝试转到
https://www.google.com.au/#q=hello
在加载扩展之前和之后看看我上面提到的问题。
希望这可以帮助您专家解决问题。
【问题讨论】:
标签: javascript angularjs angular-ui-router