如何将多个按钮值的行保存到angularjs和ionic中的localstorage

时间:2016-10-30 19:08:01

标签: javascript angularjs html5 ionic-framework

这里我有ng-repeat,它使用来自controller的值填充行数。每行包含三个标记为优秀,好的和坏的按钮。我想要做的是使用cval和button值将一个值保存到localstorage从每行三个按钮。选择一个应该保持激活按钮。

<div class="element" ng-repeat="cval in userOrderedValues track by $index">
    <div class="values">
        <p>{{cval}}</p>
    </div>
    <div class="btns">
        <button class="button button-balanced" ng-model="selected" ng-click="saveStatus($index,cval,'good')" ng-class="{'active':val=='good' && current==$index}">excellent</button>
        <button class="button button-amber" ng-model="selected" ng-click="saveStatus($index,cval,'ok')" ng-class="{'active':val=='ok' && current==$index}">good</button>
        <button class="button button-assertive" ng-model="selected" ng-click="saveStatus($index,cval,'nw')" ng-class="{'active':val=='nw' && current==$index}">bad</button>
    </div>
</div>

我如何将这些值保存到localstorage?这是codepen我为此做的

1 个答案:

答案 0 :(得分:0)

Angular有一个模块$cookies就是这样做的。要使用它,您首先需要添加脚本以引入模块,然后您需要更新主模块的依赖项以包含$ ngCookies,最后在您的控制器中您可以注入$ cookies。

一种方法是维护包含任何选择的对象。您可以使用$cookies.put()$cookies.get()与简单值(例如字符串和数字)进行交互,但由于我们将处理对象,因此我们要使用$cookies.putObject()$cookies.getObject()

这是一个关于如何look的简单例子的傻瓜。我尝试在你的codepen小提琴中做这件事,但显然代码在代码改变时清除了cookie。