AngularJS ng仅单击小分辨率

AngularJS ng仅单击小分辨率,angularjs,Angularjs,我有一张桌子 <table> <tr> <td>Some</td> <td>Some</td> <td>Some</td> <td><a href="#" class="btn">Go Btn</td> </tr> </table> 一些 一些 一些 去Btn 在小型设备上,我

我有一张桌子

<table>
   <tr>
      <td>Some</td>
      <td>Some</td>
      <td>Some</td>
      <td><a href="#" class="btn">Go Btn</td>
   </tr>
</table>

一些
一些
一些
去Btn
在小型设备上,我想隐藏按钮并在所有标签上建立链接

所以我需要像这样的东西

<table>
   <tr ng-click="if(window.width()<480) window.location.href=url.html">
      ...
   </tr>
</table>

...
我需要为很多表实现这个案例。我可以在ng click derictive的某个地方做这个逻辑吗?也许我需要扩展它或者创建一个新的

请用有角度的方法给我推荐一个好的解决方案。
Thanx

您可以在控制器中执行但您需要使用
$window
服务:

app.controller("myCtrl", ["$scope", "$window", function($scope, $window){
    $scope.myFunction = function(){
        if($window.document.body.clientWidth < 480){
            // ...
        }
    };
}]);

ng-click="myFunction()"
app.controller(“myCtrl”、[“$scope”、“$window”、函数($scope、$window){
$scope.myFunction=function(){
如果($window.document.body.clientWidth<480){
// ...
}
};
}]);
ng click=“myFunction()”
或者创建一个自定义指令

或者只需使用CSS
@media
宽度检查隐藏此元素并显示其他元素,而无需单击


等等。

如果你想要一个指导性的解决方案,Css是很好的。试试这个

<div ng-style="showbtnornot()" buttondirective>

这将是指令这不是100%准确,但它应该给你的想法

.directive('buttondirective', function (Ls, window) {
      return function (scope, element, attr, window) {
          scope.showbtnornot= function () {
             if(window.innerWidth < 400){
            return {
                'display': 'none',

            };
        } else {

            return {
                'display': 'block',

            };
        }
    }
}
})
指令('buttondirective',函数(Ls,窗口){ 返回函数(范围、元素、属性、窗口){ scope.showbtnornot=函数(){ 如果(窗内宽度<400){ 返回{ “显示”:“无”, }; }否则{ 返回{ “显示”:“块”, }; } } } })