AngularJS 将项目推送到 $scope 数组的第一个或 0 个索引 [英] AngularJS push item to first or 0 index of $scope array

查看:24
本文介绍了AngularJS 将项目推送到 $scope 数组的第一个或 0 个索引的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

请帮我实现这个功能.我的 $scope 中有一组项目.现在,当我单击添加项目"按钮时,我想将新项目推送到该数组的第一个索引或 0 索引.提前致谢.:)

这是一个有效的 jsFiddle 开始:http://jsfiddle.net/limeric29/7FH2e/

HTML:

{{数据}}<br/><input type="button" ng-click="addItem()" value="添加项目"/>

JavaScript:

function Ctrl($scope) {$scope.data = [new String('Item 5'), new String('Item 4'), new String('Item 3'), new String('Item 2'), new String('Item 1')];$scope.addItem = 函数 () {var c = $scope.data.length + 1;var item = new String('Item ' + c)$scope.data.push(item);};}

解决方案

通过使用 splice() 而不是 push() 并指定要插入的数组索引解决了我的问题.

HTML:

<pre>{{data}}</pre><br/><input type="button" ng-click="addItem()" value="添加项目"/>

Javascript:

function Ctrl($scope) {$scope.data = [new String('Item 4'), new String('Item 3'), new String('Item 2'), new String('Item 1')];$scope.addItem = 函数 () {var c = $scope.data.length + 1;var item = new String('Item ' + c)$scope.data.splice(0, 0, item);};}

这是更新的小提琴.http://jsfiddle.net/limeric29/xvHNe/

Please help me implement this function. I have an array of items in my $scope. Now, when I click on the Add Item button, I want to push a new item to the first index or 0 index of that array. Thanks in advance. :)

Here's a working jsFiddle to start with: http://jsfiddle.net/limeric29/7FH2e/

HTML:

<div ng-controller="Ctrl">
    {{data}}<br/>
    <input type="button" ng-click="addItem()" value="Add Item" />
</div>

JavaScript:

function Ctrl($scope) {
    $scope.data = [
    new String('Item 5'), new String('Item 4'), new String('Item 3'), new String('Item 2'), new String('Item 1')];

    $scope.addItem = function () {
        var c = $scope.data.length + 1;
        var item = new String('Item ' + c)
        $scope.data.push(item);
    };
}

解决方案

Solved my problem by using splice() instead of push() and assigning to what array index to insert.

HTML:

<div ng-controller="Ctrl">
    <pre>{{data}}</pre><br/>
    <input type="button" ng-click="addItem()" value="Add Item" />
</div>

Javascript:

function Ctrl($scope) {
    $scope.data = [
    new String('Item 4'), new String('Item 3'), new String('Item 2'), new String('Item 1')];

    $scope.addItem = function () {
        var c = $scope.data.length + 1;
        var item = new String('Item ' + c)
        $scope.data.splice(0, 0, item);
    };
}

Here's the updated fiddle for this. http://jsfiddle.net/limeric29/xvHNe/

这篇关于AngularJS 将项目推送到 $scope 数组的第一个或 0 个索引的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆