0
只有當我們點擊span
時,我們才能動態創建一個簡單的跨度來輸入ng-model
功能。我們是否可以動態創建一個簡單的跨度,只有當我們點擊跨度時才能使用ng-model功能輸入
我已經通過了路,在那裏我創造既span
和input
和ng-hide
隱藏input
在加載和顯示只有當input
用戶點擊跨度。但這裏的問題在於,我們直接將輸入與ng-model的值綁定,並在瀏覽器中導致緩慢和掛起問題,因爲我們有大量數據列表(我用1000個值進行了測試)。
請幫我解決這個問題,我想在加載時做所有隻讀數據,當用戶點擊span時,它應該動態地轉換到輸入框,當我們對它進行任何修改時,它應該保存在列表中。
Plunkr:http://plnkr.co/hwi1vXQxgaTSMzEdwcf7
HTML
<div ng-controller="myctrl">
<div ng-repeat="value in list">
<span ng-click="editThis()" tabindex="0">{{value}}</span>
</div>
</div>
控制器
app.controller("myctrl", function($scope){
$scope.list = [
"sports", "coverage", "breaking", "news", "live",
"results", "and", "complete", "sport", "information:",
"football", "basket", "tennis"
];
$scope.editThis = function(){
};
});
看到這個[答案](https://stackoverflow.com/a/18214735/3455035),但我認爲你有'span \ input'和使用'ng-if'交換的原始方法會更好,而不是創建自定義指令並在循環中運行它。嘗試通過ng-repeat中的'track by'或者避免'ng-if \ ng-show'中的函數來使應用程序更快 – anoop