VSTS扩展从操作导航到集线器

时间:2016-06-16 16:24:50

标签: javascript tfs azure-devops

我正在尝试从我的扩展操作上下文菜单导航到我的自定义中心。当我执行window.parent.location = url时,我收到有关在没有allow-top-navigation沙箱属性的情况下从iframe更改顶级网址的错误。

从操作菜单项(代码项到我的自定义中心?)导航到集线器的正确方法是什么?这是使用内部部署版本

var menuContributionHandler = (function () {
     "use strict";
     return {
         execute: function (actionContext) {

         var vsoContext = VSS.getWebContext();
         var extensionContext = VSS.getExtensionContext();

        window.top.location.href = vsoContext.host.uri
            + vsoContext.project.name 
            + "/_apps/hub/" 
            + extensionContext.publisherId
            + "."
            + extensionContext.extensionId;
            }
         }
     });

1 个答案:

答案 0 :(得分:0)

使用" window.top.location.href"我可以得到同样的错误在on-Premise服务器上,它可以在VSTS上运行,最后我使用" window.open"作为替代方式在新窗口中打开集线器。而且您缺少自定义中心的贡献ID。

  var menuContributionHandler = (function () {
     "use strict";
     return {
         execute: function (actionContext) {
             var vsoContext = VSS.getWebContext();
             var extensionContext = VSS.getExtensionContext();
             var huburl = vsoContext.host.uri
                + vsoContext.project.name
                + "/_apps/hub/"
                + extensionContext.publisherId
                + "."
                + extensionContext.extensionId
                + "."
                + "customhubcontributionid";
             window.open(huburl);
         }
     };
 }());