单击鼠标中键/ ctrl +单击角度js

时间:2017-10-26 05:37:23

标签: html angularjs

目前我正在使用angular 1.6应用程序  我从stackoverflow实现了这个代码,但这并没有解决我的解决方案。

这是我的代码

app.run(function($rootScope, $state) {

$rootScope.navigate = function($event, to, params) {

    // If the command key is down, open the URL in a new tab
    if ($event.metaKey) {
        var url = $state.href(to, params, {absolute: true});
        window.open(url,'_blank');

    } else {
        $state.go(to, params);
    }

};

});

我的HTML代码

<div class="title" data-ng-click="$ctrl.goToDetails($event)" data-ng-bind="$ctrl.config.entryTitle"></div>

控制器

$state.go('entry-details', { entryId: vm.config.id, query: vm.query });

我是角色的新手,所以请建议如何实施。 如果我得到一个小提琴,那会更好。

1 个答案:

答案 0 :(得分:0)

您的代码中只需:absolute: false并调用function navigate with ng-click,下面是测试示例。它工作正常:

app.run(function($rootScope, $state,$window) {

    $rootScope.navigate = function($event, to, params) {

        // If the command key is down, open the URL in a new tab
        if ($event.ctrlKey) {
            var url = $state.href(to, params, {absolute: false});
            $window.open(url,'_blank');

        } else {
            $state.go(to, params);
        }

    };

})

<div ng-click="navigate($event, 'StateName', {PARAMS:PARAMS})">ClickMe</div>