2014-04-22 21 views
6

Bu yüzden bir gönderi listem var ve bunların hepsi farklı uzunluklardadır, bu yüzden onları 500. karakterde kesiyorum, ancak geri kalanını ng-click üzerinde göstermek istiyorum. Bunu yapmak için bazı "açısal yol" var gibi görünüyor ama google yoluyla bulamadık.açısal sınırı kaldırmak için Tıklatın ng-click

<ul id = "postsList"> 
    <li ng-repeat="post in Posts" > 
    <p>{{ post.messageBody | limitTo:500 }}</p> 
    <button ng-click = "undoLimitTo()">View</button> 
    </li> 
</ul> 

cevap

11

I like it yazardı: limiti için

set düzenlenebilir değer ve Posts uzunluk vermek

<ul id = "postsList"> 
    <li ng-repeat="post in Posts" ng-init="limit= 500"> 
    <p>{{ post.messageBody | limitTo:limit }}</p> 
    <button ng-click = "limit = Posts.length">View</button> 
    </li> 
</ul> 
Ben kontrolöre eklersiniz
+0

Teşekkürler. Bu çözüm de işe yarıyor. Ancak posts.messageBody.length eklemek gerekiyordu. Henüz hangi yöntemi kullanacağımı bilmiyorum. – user2865156

3

bu deneyin:

<ul id = "postsList" ng-init="limit = 500"> 
    <li ng-repeat="post in Posts" > 
    <p>{{ post.messageBody | limitTo:limit }}</p> 
    <button ng-click = "limit = Number.MAX_SAFE_INTEGER">View</button> 
    </li> 
</ul> 

DÜZENLEME

Bu saçmalık. Tüm gönderilerin limitini değiştirir.

Denetleyicinizde, Posts ürününe limit özelliğini ekleyebilirsiniz. Ve sonra:

<ul id = "postsList"> 
    <li ng-repeat="post in Posts" > 
    <p>{{ post.messageBody | limitTo:post.limit }}</p> 
    <button ng-click = "post.limit = post.messageBody.length">View</button> 
    </li> 
</ul> 
+0

: '$ scope.Number = Number;' Açısal Sayı ne olduğunu bilmiyor. –

+0

Teşekkürler çocuklar. Bu öneriler sorunumu çözdü. Zaman penceresi dolduğunda cevap işareti verilecektir. – user2865156

+0

@phylax http://jsfiddle.net/9Ymvt/1297/ Denetleyiciyle 'Number'ı bağlamanız gerekmiyor, yol yok :) –

İlgili konular