javascript - ngClick 上的三元条件

标签 javascript jquery angularjs html

我正在尝试根据设备类型切换功能。我有一个可点击的设置选项卡。在桌面版本中,ngClick 应重定向到默认 url。但是,在移动版本中,单击相同的链接将打开一个模式。 我做了这样的事情

设置.Html -

 <li id="btn-alerts" ng-click="showSettingsModal ? openModal() : redirectToURL()">

设置.指令 -

        $scope.showPharmacySettingsModal = false;
        if (deviceWidth < 481) {       
            currentDevice = 'mobile';
            $scope.showSettingsModal = true;
        }
        $scope.redirectTo = function(){
         $window.location.href = url;
        }

我想知道这是否是检查设备并在 ng-click 上执行某些操作的好方法。有没有更好的方法可以推荐?

谢谢

最佳答案

ng-click 旨在使用函数。我建议在您的作用域上创建一个方法来完成三元条件的操作,并在 ng-click 中调用它。

 <li id="btn-alerts" ng-click="chooseMethod()">

然后在你的范围内:

$scope.chooseMethod = function(){
      showSettingsModal ? openModal() : redirectToURL();
}

关于javascript - ngClick 上的三元条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33070788/

相关文章:

angularjs - ocLazyload 未加载模块

javascript - 这种组件通信方法是 Ember 反模式吗?

javascript - 如何使用 Promise 使函数在用返回的数据填充变量之前等待?

javascript - 在 phonegap 中对图像创建自定义弹出测试?

javascript - 克隆匿名函数

jquery - 如何仅克隆特定数量的元素?

javascript - 单击超链接后在同一页面显示对象

javascript - 重新加载页面后在默认 <li> 下创建第二个或下一个 <li> | jQuery、本地存储

javascript - 使用 Array.Sort 而不使用数组中的两个值

javascript - ng-show 不适用于 UnderscoreJS 的 _.isNull 但适用于 val === null