में कई टाइम्स कॉल किए गए फ़ंक्शन को मैं एक ऐसे मुद्दे में चला रहा हूं जहां मैं एनजी-दोहराना लूप के अंदर फ़ंक्शन के आउटपुट से जुड़ना चाहता हूं। मुझे लगता है कि फ़ंक्शन को प्रति आइटम दो बार बुलाया जा रहा है, जैसा कि मैं अपेक्षा करता हूं।एंगुलरजेएस दोहराया गया अनुभाग
<tr ng-repeat="row in timesheetRows">
<td>
<select ng-model="row.categoryID">
<option ng-repeat="category in categories" value="{{category.id}}">
{{category.title}}
</option>
</select>
</td>
<td ng-repeat="day in row.dayValues">
<input type="text" ng-model="day.hours" />
</td>
<td>{{calcRowTotal($index, row)}}</td>
</tr>
calcRowTotal() फ़ंक्शन आगे दिखाई देता है:: यहाँ एनजी-दोहराने धारा (नोटिस अंत में calcRowTotal() कॉल) है
$scope.calcRowTotal = function (index, row) {
console.log('calcRowTotal - Index: ' + index);
var total = 0;
for (var i = 0; i < row.dayValues.length; i++) {
var num = parseFloat(row.dayValues[i].hours);
if (isNaN(num)) {
num = 0;
//this.dayValues[i].hours = 0;
}
total += num;
}
//updateDayTotals();
return total;
}
आइटम आवर्ती जा रहा है में से एक का एक उदाहरण के माध्यम से आगे दिखाई देता है:
{
categoryID: 2,
dayValues: [
{ day: $scope.days[0], hours: 5 },
{ day: $scope.days[1], hours: 0 },
{ day: $scope.days[2], hours: 3 },
{ day: $scope.days[3], hours: 0 },
{ day: $scope.days[4], hours: 2 },
{ day: $scope.days[5], hours: 5 },
{ day: $scope.days[6], hours: 8 }
]
}
मैं कंसोल में निम्नलिखित (दो आइटम संग्रह मैं के माध्यम से पाशन कर रहा हूँ में हैं) दिखाई दे रही है:
calcRowTotal - Index: 0
calcRowTotal - Index: 1
calcRowTotal - Index: 0
calcRowTotal - Index: 1
मैं निश्चित रूप से "पंक्ति कुल" संपत्ति बना सकता हूं लेकिन ऊपर दिखाए गए फ़ंक्शन द्वारा प्रदान किए गए "लाइव" डेटा से जुड़ना पसंद करूंगा। उम्मीद है कि नकल कुछ आसान है जो मुझे याद आ रही है, इसलिए मैं किसी भी प्रतिक्रिया की सराहना करता हूं कि मैं नकल क्यों देख रहा हूं। एक साइड नोट के रूप में, जैसा कि टेक्स्टबॉक्स में से किसी एक में डेटा बदलता है, मुझे पंक्ति योग को भी अपडेट करने की आवश्यकता होती है, इसलिए मुझे एक अलग दृष्टिकोण की आवश्यकता हो सकती है। हालांकि इस विशेष स्थिति को समझने में दिलचस्पी है .... निश्चित रूप से डुप्लिकेशंस नहीं चाहते हैं क्योंकि संभावित रूप से बहुत सारी पंक्तियां हो सकती हैं।
यहाँ एक उदाहरण है: http://jsfiddle.net/dwahlin/Y7XbY/2/
यह http://stackoverflow.com/q/14973792/259038 का डुप्लिकेट है, हालांकि यह तुरंत स्पष्ट नहीं हो सकता है। –
धन्यवाद जोश। काफी समय खोज कर बिताया लेकिन उसे नहीं देखा। जानकारी की सराहना करें। –
हाँ, यह निश्चित रूप से एक "डुप्लिकेट" को डुप्लिकेट नहीं है क्योंकि यह स्पष्ट नहीं है कि वे एक ही मामले हैं। मैं बस भविष्य के दर्शकों के लिए लूप बंद करना चाहता था। –