首页 > 解决方案 > 如何使用limitTo动态过滤来显示长文本

问题描述

我有一个生成数据表的指令。

我必须让这个数据表中的一列显示一个限制文本,所以我想要一个在我点击链接时显示全文的链接。诸如“或多或少”之类的东西。

我在下面有这段代码。我相信代码是正确的,我在这里得到了这个解决方案

<tbody  ng-init="limit = 10; showed = false">
            <tr ng-repeat="row in dataPaginated | orderBy: orderDefinitions">
                <td ng-repeat="column in columns | orderBy: 'id'" ng-style="{ 'white-space' : (column.nowrap) ? 'nowrap !important' : 'normal' }"
                    ng-show="column.checked">


                    <div ng-if="column.isRichText">
                          <!--  I've already tried initiate the limit and showed variables here --> 
                        <div >
                            {{ row[column.mapProperty] | limitTo : limit  }}
                            <a ng-if="column.isRichText" ng-show="row[column.mapProperty].length > limit" href
                            ng-click="limit = row[column.mapProperty].length ; showed = true">more</a> 
                            <a ng-if="column.isRichText" ng-show="showed" href
                            ng-click=" limit=10"> less</a>
                        </div>
                    </div>

                    <div ng-if="">
                        <!--  When the column isn't richText -->
                    </div>
                </td>
            </tr>
    </tbody>

但它不起作用,链接more出现,当我点击限制时更新但全文和链接less不显示。

标签: javascriptangularjsangularjs-directiveangular-filters

解决方案


推荐阅读