小编Mr.*_*rth的帖子

使用ui-router和Angularjs自动滚动到TOP

我已经阅读了很多不同的问题,并没有给出任何解决方案似乎适合我的用例.我开始只是在我的所有链接上放置target ="_ top",但这实际上迫使我的应用重新加载哪些不起作用.我也看到有人说他们使用的是autoscroll ="true",但只有在我的ui-view中它才会起作用.

这个问题是在我的index.html文件中我修复了导航和其他静态元素,这些元素位于我的第一个ui-view之上.这意味着当我转到其他页面时,当页面加载超过这些元素时,我将丢失导航.我也试过把它放在身体上:

<body autoscroll="true">
</body>
Run Code Online (Sandbox Code Playgroud)

这似乎也没有做任何事情.所以问题是,如何确保新页面(ui-router的新路由更改)从页面顶部开始?谢谢!

javascript angularjs angular-ui-router

65
推荐指数
3
解决办法
4万
查看次数

找到循环依赖:$ http < - $ templateFactory < - $ view < - $ state

我有一个当前的401检查,我正在使用$ location运行正常.但是我想将它交换到$ state并使用ui-router代替.当我这样做时,我得到一个错误代码:

Circular dependency found: $http <- $templateFactory <- $view <- $state <- authHttpResponseInterceptor <- $http <- $compile
Run Code Online (Sandbox Code Playgroud)

当我检查某些路径并且不允许登录用户查看它时,我当前的代码看起来很好:

  /* Look for 401 auth errors and then redirect */
  .factory('authHttpResponseInterceptor',['$q','$location', function($q,$location) {

      return {
          response: function(response){
              if (response.status === 401) {
              }

              return response || $q.when(response);
          },
          responseError: function(rejection) {
              var reservedPaths = ['/','/login','/connect','/event'];
              if (rejection.status === 401 && _.contains(reservedPaths,$location.path().trim())) {
                  $location.path('/welcome');

              }
              return $q.reject(rejection);
          }
      };
  }])
  .config(['$httpProvider',function($httpProvider) {
      //Http Intercpetor to check auth failures for xhr requests …
Run Code Online (Sandbox Code Playgroud)

angularjs angular-routing angular-ui-router

34
推荐指数
1
解决办法
2万
查看次数

将数组样式查询参数传递给Angularjs中的资源

我目前正在使用一个使用数组样式查询参数来过滤项目的API,但我不太确定如何在Angular中使用它.

在下面的示例中,我有一个下拉列表,它接受选择的ng模型并将其应用于参数列表,然后触发一个方法来过滤我的列表.通常,在处理普通键值时这很简单.但是在这种情况下,URL会调用以下内容:

example.com/api/list?filter[number]=1
Run Code Online (Sandbox Code Playgroud)

我目前的设置看起来像这样

$scope.paramers = {
    include: 'playing', 
    sort: '-id'
};
$scope.refresh = function () {
    LFGFactory.query($scope.paramers, function success (response) {
        $scope.loading = true;
        var data = response.data;
        if (data.length >= 1) {
            $scope.rowList = data;
            $scope.loading = false;
        } else {
            $scope.loading = false;
        }
    },
    function err (data) {
        console.log(data);
    });
};
Run Code Online (Sandbox Code Playgroud)

虽然我的观点如下:

        <div class="form-group pull-right">
            <select id="plat-sel" name="plat-sel" class="form-control" ng-model="paramers.filter" ng-change="refresh()">
                <option value="" disabled selected>Filter by Platform</option>
                <option value="1183">Xbox One</option>
                <option value="1184">PlayStation 4</option>
                <option value="1182">PC</option>
                <option …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs ngresource

6
推荐指数
1
解决办法
694
查看次数

AngularJS指令在点击时添加类,但如果单击则删除并将其添加到另一个元素

我有一个简单的指令,用于在点击时添加一个类,如果再次单击,则从元素中删除它.但是我想重构它以便在通用菜单中更常用.相反,如果<li>单击的元素不是当前活动元素,则应将其从当前元素中删除并将其放在新元素上.基本上我想<li>为当前活动的元素添加一个"活动"类.

在我的菜单中,我有:

<ul>
    <li><a swapit ng-click="lol(stillgot)" class="select-show">Still Got Game</a></li>
    <li><a swapit ng-click="lol(thick)" class="select-show">TnT</a></li>
    <li><a swapit ng-click="lol(seldon)" class="select-show">Seldon</a></li>
    <li><a swapit ng-click="lol(hit)" class="select-show">HitMan</a></li>
    <li><a swapit ng-click="lol(community)" class="select-show">Community</a></li>
</ul>

.directive('swapit', function() {

  return {
    restrict : 'A',

    link : function(scope, elem) {

      var currentState = true;

      elem.on('click', function() {
        console.log('You clicked me!');

        if(currentState === true) {
          console.log('It is on!');
          angular.element(elem).addClass('active');
        } else {
          console.log('It is off!');
          angular.element(elem).removeClass('active');
        }

        currentState = !currentState;

      });


    }
  };
});
Run Code Online (Sandbox Code Playgroud)

javascript angularjs angularjs-directive

5
推荐指数
1
解决办法
3万
查看次数

续集:调用 .get({plain: true })) 返回 .get 不是函数

我不确定为什么会发生这种情况,因为我只返回其他位置的实例的值就好了。看到我的代码有什么问题吗?

app.get('/profile', checkAuth, function(req, res) {
    var useObj = req.user;
    var guilds = req.user.guilds;
    User.findAll({
        where: { userid: useObj.id },
        include: [{
            model: Guild
        }]
    }).then(function(group) {
        console.log(group.get({
            plain: true
        }))
    })  
});
Run Code Online (Sandbox Code Playgroud)

javascript express sequelize.js

3
推荐指数
1
解决办法
1946
查看次数

从MySql移植到Redis

这可能更像是一个两部分问题,但主要关注的是如何将数据从MySql移植到Redis中.我已经阅读了[这里的过程] [1],但就我的多列数据集如何工作而言,它有点过头了.最终目标是我想将我的活动源从SQL转移到Redis.据我所知,最好的方法是将这些数据存储在哈希中,然后使用有序集对其进行排序.最常见的开始类型就是created_at.

所以问题是:

1)通过命令行将此端口移植到SQL的快速方法是什么?

2)如何通过created_at进行排序?

mysql sql caching nosql redis

2
推荐指数
1
解决办法
1764
查看次数