如何从Firebase DB生成的列表中删除选择列表选项?

时间:2016-11-26 18:26:04

标签: angularjs firebase firebase-realtime-database

不确定我是否正确这样做。我想要做的是从我的firebase db创建一个选项列表。该列表正在按照我的预期返回并显示。我希望能够选择一个选项并单击“删除”按钮,以便我可以从列表中删除选项。目前,如果我选择一个选项,则所有选项都会消失。有关示例,请参阅this page

我做错了什么?我会在这里使用ng-options更好吗?

            <form name="categoryRemoveForm"  class="category-form">
                <select ng-model="cat">
                    <option ng-repeat="cat in cat.cats" value="{{cat.$id}}">{{cat.name}}</option>
                </select>  

                    <div class="row">
                        <div class="col span-1-of-3">
                            <label>&nbsp;</label>
                        </div>
                        <div class="col span-2-of-3">
                           <input type="submit" id="submit" value="Remove Category" ng-submit="removeCategory(cat)" ng-disabled='!categoryRemoveForm.$valid'/>
                        </div>                            
                    </div>                      
            </form>     

1 个答案:

答案 0 :(得分:1)

您的select模型名为cat,因此当您选择一个选项并设置模型时,cat中的ngRepeat会因为继承而被cat.cats取代selectedCategory未定义且ngRepeat无法重复

这里是一个说明你的价值如何变化的傻瓜

http://plnkr.co/edit/qLoe8j1QyZarNjHtaHT9?p=preview

因此,您应该将模型重命名为removeCategory,并且只要return false;在同一范围内,您就不必传递模型值