2015-09-04 98 views
0

我试图从工厂获取信息并尝试打印它dynamic。 之前,我做了这样的:从工厂获取数组动态

<div class="articlePage"> 
    <h4> {{ posts[0].title }} </h4> <span style="color: #666;"> {{ posts[0].date }} </span> 
    <p> {{ posts[0].text }} </p> {{id}} 
</div> 

但现在我说:“[0]”于是我问只有数组中的第一个,但是从现在开始,这是一个网页,因此需要动态。

在我的主页上我有很多帖子,当我点击一个帖子时,我想阅读特定页面上的完整帖子。

这是我厂的样子:

App.factory('PostsService', [function() { 
    var postsService = {}; 

    var _posts = [{ 
      id: 00, 
      title: 'Kabinet in hoger beroep tegen klimaatvonnis', 
      text: 'Dat bevestigen Haagse bronnen na berichtgeving in dagblad Trouw. Het kabinet zegt tegelijkertijd wel bereid te zijn om extra maatregelen te nemen om de uitstoot van broeikasgassen terug te dringen. Staatssecretaris Mansveld van Milieu maakt naar verluidt dinsdagmiddag bekend hoe het kabinet dat wil doen. De zaak tegen de overheid werd aangespannen door actiegroep Urgenda en negenhonderd klagers. Die stelden dat de Staat zich meer moet inspannen om de CO2-uitstoot in Nederland terug te dringen.', 
      date: '28 september 2015' 
    }, 
     { 
      id: 01, 
      title: '\'Leraren kritisch over passend onderwijs\'', 
      text: 'Dat blijkt uit onderzoek van het AD en Duo Onderwijsonderzoek. Door passend onderwijs kunnen leerlingen die meer hulp nodig hebben, vaker terecht in het reguliere onderwijs. Bijna de helft van docenten (47 procent) in het voorgezet onderwijs zegt echter te weinig tijd te hebben om dergelijke jongeren goed te helpen. In het basisonderwijs is dat zelfs 84 procent. Extra handen in de klas staan dan ook op het verlanglijstje van vrijwel alle docenten in het voortgezet onderwijs (84 procent) en het basisonderwijs (99 procent). Ook zegt 98 procent van de leraren op de middelbare school behoefte te hebben aan kleinere klassen, tegenover ongeveer 95 procent van hun collega\'s in het basisonderwijs. Het onderzoek werd uitgevoerd onder 1668 onderwijsmedewerkers, zoals leraren, directeuren en zorgcoördinatoren.', 
      date: '15 januari 2015' 
    }, 
     { 
      id: 02, 
      title: 'Premier Curaçao dient ontslag in', 
      text: 'De partij van Asjes, Pueblo Soberano (PS), had eerder op de dag het vertrouwen in de minister-president opgezegd. De partij heeft niet bekendgemaakt waarom het vertrouwen in de premier is opgezegd, maar de PS-fractie botste de afgelopen maanden een aantal keer openlijk met Asjes over verschillende beleidskwesties. Het vertrek van Asjes leidt niet direct tot de val van het kabinet. Een van de meningsverschillen draaide om de steun die de premier bleef geven aan de gevolmachtigde minister van Curaçao in Nederland, Marvelyne Wiels. Zij ligt zwaar onder vuur na het verschijnen van een kritisch rapport van de Curaçaose Ombudsman over haar functioneren. De fractie zou haar niet meer willen steunen. Minister van Volksgezondheid Ben Whiteman is maandagavond door de gouverneur gevraagd de functie van minister-president waar te nemen voor een periode van drie maanden. Whiteman heeft de functie geaccepteerd. Hij zei tegen de pers de gang van zaken rond het vertrek van Asjes te betreuren.', 
      date: '31 augustus 2015' 
    }, 
     { 
      id: 03, 
      title: 'Asscher heeft nog geen akkoord met Marokko over uitkeringen', 
      text: 'Desondanks hoopt de bewindsman nog steeds tot een akkoord te komen, schrijft hij dinsdag aan de Tweede Kamer. Het socialezekerheidsverdrag regelt de uitbetaling van Nederlandse uitkeringen voor Marokkaanse-Nederlanders in Marokko. Asscher wil die uitkeringen aanpassen aan het levenspeil in Marokko en dus verlagen. De regering in Rabat voelt hier echter niets voor. Het is de tweede keer dat Asscher moet meldden dat hij niet tot een akkoord is gekomen. Eerder hoopte hij er al op 15 juni uit te zijn. Later verschoof die datum naar 1 september. In de afgelopen periode is intensief overleg gevoerd met Marokko. Tot op heden heeft dit echter nog niet geresulteerd in een akkoord, aldus Asscher. Een nieuwe datum voor een mogelijk akkoord noemt hij niet. Vooral regeringspartij VVD heeft zich hard gemaakt voor aanpassing van het socialezekerheidsverdrag. De Tweede Kamer nam vorig jaar een VVD-motie aan waarin stond dat het verdrag moest worden opgezegd als de onderhandelingen niet snel vruchten zouden afwerpen.', 
      date: '02 april 2015' 
    } 
    ]; 

    postsService.posts = _posts; 

    return postsService; 
} 

我希望你明白我的问题,如果你不问,你要知道,我希望你能帮助我的东西。

+0

如果你想显示页面中的所有记录使用'ng-repeat' –

回答

0

更新回答

HTML

<div ng-controller="myCtrl"> 
    <div >Post</div> 
    <div ng-repeat="post in posts | filter:filters"> 
    <h4 ng-click="filters.id = post.id"> {{ post.title }}</h4> 
    <span style="color: #666;"> {{ post.date }} </span> 
    <p> {{ post.text }} </p> 
    </div> 
    <div ng-click="filters.id = ''" ng-if="filters.id == ''">Go Back</div> 
</div> 

控制器

app.controller("myCtrl" , function($scope,PostsService) {   
    $scope.posts = PostsService.posts; 
    $scope.filters = {};      
}); 

参考plunker

点击文章的标题,然后只交的是可见的,然后一个“返回”按钮可见回去后的所有页面。

该处理使用filters对象完成,该对象仅过滤执行click的该帖子。

+0

谢谢你的时间。 我尝试过,但现在当我点击一个帖子时,它显示了特定页面上的所有帖子,但我只想显示我点击的帖子 – SjaakvBrabant

+0

我需要类似{{post.title where id = 1}}}我知道它不工作,但我需要的东西 – SjaakvBrabant

+0

@Goldenowner:我已经更新了答案!希望这可以解决你的要求。抱歉回复晚了 :-) –