Angular js ng-repeat和ng-show无法进行刷新

时间:2014-12-21 16:03:08

标签: javascript angularjs jhipster

您好我有以下问题:我创建了一个带有角度js和弹簧的Web应用程序。这是一个可以发布消息的平台。因此,在角度控制器上,我编写了以下代码。

<div class="row" ng-repeat="message in messages">
                <div class="col-md-4 mb" style="margin-left: 40px;">
                    <div class="darkblue-panel pn">
                        <div class="darkblue-header">
                            <h5>{{messages.message}}</h5>
                        </div>
                        {{messages.creator}} {{messages.date | date:'dd.MM.yy'}}
                        <br/>
                        <div ng-show="'{{messages.creator}}'=='{{settingsAccount.login}}'">
                            <button type="submit"
                                    ng-click="update(messages.id)"
                                    class="btn btn-default">
                                <span class="glyphicon glyphicon-pencil"></span> Edit
                            </button>
                            <button type="submit"
                                    ng-click="delete(messages.id)"
                                    class="btn btn-danger">
                                <span class="glyphicon glyphicon-remove-circle"></span> Delete
                            </button>
                        </div>
                    </div>
                </div>
            </div>

注意ng-show。该行负责编辑和删除消息的按钮仅显示给消息的创建者。

到目前为止一切都很好。消息随按钮一起显示。当我刷新页面时出现问题。然后显示消息,但编辑和删除的按钮消失了。

值(messages.creator和settingsAccount.login)仍然相同但我认为ng-show在刷新后没有检查。当我粘贴新消息时,会检查ng-show条件,并且我可以编辑之前粘贴的消息,以及刚刚粘贴的消息。

我该如何解决这个问题?为什么页面刷新后没有检查ng显示的条件?刷新后是否执行了ng-repeat?

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。刷新后,我松开会话中的值。为了解决这个问题,我现在使用localStorage或Cookies,我在开始时初始化。