基本的Angular JS刷新和保持会话

时间:2014-02-22 08:20:25

标签: javascript angularjs session filter refresh

这是一个菜鸟问题,我对JS和Angular知之甚少。 (这是我第一次触摸)。 但是我需要让这件事工作,我感谢你的帮助。

我有下面的脚本/ HTML,它有点工作。但是缺少两件事: 1)它为每次刷新创建一个新会话 2)它过滤'facebook-post',我希望它过滤'facebook-post'或'twitter-message'。

请不要' - '过于基本的问题(而且是......)但是我花了一整天时间尝试自己解决它。我意识到我需要花几天时间学习JS和Angular,我现在没有几天。

任何帮助都将不胜感激。

PS,在触摸主题时:学习JS和Angular的最快方法是什么?我的意思是快......; - )

谢谢!

HTML: ......

    < div ng-controller="getMessages ">  
     < ol>  
        < li ng-repeat="message in messages  | filter:{'object-type':'facebook-post'}">  
        < div class="message">  
            < div class="icon"><img src="{{message['icon-url']}}" alt="" /></div>  
            < div class="text">{{message.text}}</div>  
            < div class="clear"></div>  
        < /div>  
        < /li>  
     < /ol>  

JS:

    function getJsonData($scope, $http, $filter) {
    $http({
        url : "some-url",
        dataType : 'jsonp',
        crossDomain : 'true',
        method : 'GET',
        data : {},      
        headers : {
            "Content-Type" : "application/json"
        }
    }).success(function(data, status, headers, config) {

        $scope.messages = data; //update_messages(data, $filter);

    });
    }

function getMessages($scope, $http, $timeout, $filter) {
    // initial call on load of page
    getJsonData($scope, $http, $filter);
    // polled call in specific intervals
    var poll = function() {
        $timeout(function() {
            getJsonData($scope, $http, $filter);
            poll();
        }, 10000);
    };
    poll();
}

1 个答案:

答案 0 :(得分:1)

对于第2点,您可以使用过滤功能:

查看:

<li ng-repeat="message in messages  | filter:socialMedia">

控制器:

$scope.socialMedia= function(media){
   return media == 'facebook-post' || media == 'twitter-message';

};

我不确定我是否理解有关多个会话的问题1。

至于学习角度我非常喜欢ng-bookPluralsight有很多好的课程(我没有任何关系,但他们帮助我加快速度)。