programing

AngularJS는 $scope 배열의 첫 번째 또는 0 인덱스에 항목을 푸시합니다.

javamemo 2023. 2. 24. 13:12
반응형

AngularJS는 $scope 배열의 첫 번째 또는 0 인덱스에 항목을 푸시합니다.

이 기능을 실행할 수 있도록 도와주세요.내 안에 다양한 아이템이 있습니다.$scope[ Add Item ]버튼을 클릭하면 해당 배열의 첫 번째 인덱스 또는0 인덱스에 새 아이템을 푸시합니다.잘 부탁드립니다.:)

먼저 jsFiddle을 소개합니다.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);
    };
}

이동 해제 기능을 사용할 수 있습니다.

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 item = new String('Item ' + c)
    $scope.data.unshift(item);
};
}

push() 대신 splice()를 사용하여 삽입할 배열 인덱스에 할당함으로써 문제를 해결했습니다.

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);
    };
}

이 바이올린의 최신 버전입니다.http://jsfiddle.net/limeric29/xvHNe/

$scope.data.unshift(item);

한 줄, 다른 줄들이 왜 그렇게 어렵게 만드는지 모르겠다.

이것을 시험해 보세요.

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.push(item);
    };
}

이 수술은 필요 없을 것 같아요이렇게 해결할 수 있습니다.

<div ng-controller="Ctrl">
    <!-- "$index" is short parameter, "true" statment is reverse parameter -->
    {{data | reverse:$index:true}}<br/>
    <input type="button" ng-click="addItem()" value="Add Item" />
</div>

언급URL : https://stackoverflow.com/questions/17826766/angularjs-push-item-to-first-or-0-index-of-scope-array

반응형