2015-09-04 100 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:我已經更新了答案!希望這可以解決你的要求。抱歉回覆晚了 :-) –