2016-07-04 31 views
-1

这里输入重命名对象是我的代码:采取从弹出

<button ng-repeat="(name,content) in contacts" ng-dblclick="rename(name)">{{ name }}</button> 

$scope.rename = function() { 
    $scope.newname = prompt("Please reenter file name"); 
    // ... *incomplete* 
} 

我需要重命名功能,其拍摄对象的名称作为输入,并可能创建一个对象的逻辑新的名称和相同的值,并删除旧的对象。

回答

0

为什么要删除一个对象,然后创建一个新对象,何时才能编辑对象?

你可以使用$index,假设contacts是包含对象与name属性的数组:

<button ng-repeat="contact in contacts" ng-dblclick="rename($index)"> {{ contact.name }} </button>

$scope.rename = function(idx) { 
    var newName = prompt("Please reenter file name"); 
    $scope.contacts[idx].name = newName; 
} 

另一种选择是对象本身发送给该函数:

<button ng-repeat="contact in contacts" ng-dblclick="rename(contact)"> {{ contact.name }} </button>

$scope.rename = function(contact) { 
    var newName = prompt("Please reenter file name"); 
    contact.name = newName; 
}