您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何让ui路由器转到外部链接,例如google.com?

如何让ui路由器转到外部链接,例如google.com?

Angular-ui-router不支持外部URL,您需要使用$location.url()重定向用户$window.open()

我建议您使用$window.open('http://www.google.com', '_self')它将在同一页面上打开URL。

您还可以ui-router通过添加参数来自定义external,它可以是true/ false

  $stateProvider
  .state('external', {
       url: 'http://www.google.com',
       external: true
  })

然后$stateChangeStart在您的状态中配置并在那里处理重定向部分。

myapp.run(function($rootScope, $window) {
  $rootScope.$on('$stateChangeStart',
    function(event, toState, toParams, fromState, fromParams) {
      if (toState.external) {
        event.preventDefault();
        $window.open(toState.url, '_self');
      }
    });
})

:为了使它能正常工作, 在新窗口中打开Plunkr,因为出于安全原因, 无法在iFrame中打开它。

Go 2022/1/1 18:16:38 有561人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶