结合$ window和$ stateProvider打开一个新的浏览器选项卡窗口

时间:2016-03-24 14:57:22

标签: javascript angularjs

app.js

 $stateProvider.state('tenant.propertyGoogleMap', {
            url: '/PropertyGoogleMap',
            templateUrl: '~/App/tenant/views/propertymanagement/propertyGoogleMap.cshtml',
            menu: 'PropertyGoogleMap.Tenant'
        });

HTML

<button type="button" class="btn btn-primary" ng-click="vm.propertyGoogleMap()">
                    @L("PfMap")
                </button>

JS

 vm.propertyGoogleMap = function () {
                $window.open('tenant.propertyGoogleMap', '_blank');
            };

在用户点击按钮时,您能告诉我如何将$window$stateProvider结合使用以打开新的浏览器标签吗?当我按上面所示尝试时,它会给出404 error。谢谢。

1 个答案:

答案 0 :(得分:1)

尝试:

vm.propertyGoogleMap = function () {
                    var url = $state.href('tenant.propertyGoogleMap', {}, {absolute: true});
                    $window.open(url, '_blank');
                };

$ state是uiRouter $state service

带有选项href的方法absoulte: true返回给定状态的绝对URL。