AngularJs - 在新标签页中打开网址

Vic*_*orB 16 javascript angularjs angular-ui-router

我有一个包含公共页面和管理页面的应用程序.我想在登录后在新标签页中打开管理页面.我在登录成功后尝试了这一点,但没有效果.正在重新加载公共页面(登录的位置):

var url = $state.href('/admin/overview');
$window.open(url, '_blank');
Run Code Online (Sandbox Code Playgroud)

任何提示将不胜感激.谢谢.

mic*_*lem 30

这是一个有效的JSFiddle,你必须先注入$window才能使用它:

JS:

angular.module('myApp', [])
    .controller('dummy', ['$scope', '$window', function ($scope, $window) {
    $scope.redirectToGoogle = function () {
        $window.open('https://www.google.com', '_blank');
    };
}]);
Run Code Online (Sandbox Code Playgroud)

HTML:

<div ng-app="myApp" ng-controller="dummy"> 
    <a ng-href="" ng-click="redirectToGoogle()">Hello</a>
</div>
Run Code Online (Sandbox Code Playgroud)


小智 14

这是另一个有效的JSFiddle

HTML:

<div ng-controller="MyCtrl">
<a ng-href="{{url}}" target="_blank">Visit jsfiddle</a>
</div>
Run Code Online (Sandbox Code Playgroud)

JS:

var myApp = angular.module('myApp',[]);
function MyCtrl($scope) {
    $scope.url ='http://jsfiddle.net/HB7LU/16771/';
}
Run Code Online (Sandbox Code Playgroud)