2016-07-02 8 views
1

Ich sehe die ähnliche Frage, aber ich wusste nicht, wie dies in angularjs zu behandeln. Dieser Code gibt mir ein Array zurück und ich möchte einen Hyperlink-Tag in bestimmter Zeit für den Buchtermin machen.Erzeuge Array von Zeiten für alle X Minuten in angularjs

HTML-Code: <a> </a>

CSS-Code:

a:link, a:visited { 
background-color: white; 
color: black; 
padding: 9px 25px; 
text-align: center; 
text-decoration: none; 
display: inline-block; 
line-height: 0em; 
} 


a:hover, a:active { 
background-color: #52D017; 
}` 

Skript:

var d = 12; 

var n = 0, 
min = 20, 
periods = [" AM", " PM"], 
times = [], 
hours = [ 9, 10, 11,12, 5,6,7,8]; 

for (var i = 0; i < hours.length; i++) { 
times.push(hours[i] + ":" + n + n + periods[0]); 
while (n < 60 - min) { 
times.push(hours[i] + ":" + ((n += 20) < 10 ? "O" + n : n) + periods[0]) 
} 
n = 0; 
} 

times = times.concat(times.slice(0).map(function(time) { 
return time.replace(periods[0], periods[1]) 
})); 


console.log(times); 
document.querySelector("a").textContent += times.join() 

mir bitte helfen, diesen Code in AngularJS zu ändern und mit ng-reapeat und klicken Sie auf besondere Zeit.

Antwort

4

Verwendung ng-repeat Richtlinie als:

<div ng-repeat="v in times"> 
    <pre>{{v|json}}</pre> <!-- for demo only--> 
</div> 

Demo


Festcode (ersetzt time mit $scope.time):

var app = angular.module('myModule', []); 

app.controller('fessCntrl', function($scope, $timeout) { 

    var d = 12, 
    n = 0, 
    min = 20, 
    periods = [" AM", " PM"], 
    hours = [9, 10, 11, 12, 5, 6, 7, 8]; 

    $scope.times = []; 

    for (var i = 0; i < hours.length; i++) { 
    $scope.times.push(hours[i] + ":" + n + n + periods[0]); 
    while (n < 60 - min) { 
     $scope.times.push(hours[i] + ":" + ((n += 20) < 10 ? "O" + n : n) + periods[0]) 
    } 
    n = 0; 
    } 

    $scope.times = $scope.times.concat($scope.times.slice(0).map(function(time) { 
    return time.replace(periods[0], periods[1]) 
    })); 
}); 
+0

aber wenn ich diesen Code ausführen auf meinem Controller wird nichts passieren http://jsfiddle.net/y7hyheaa/2/ –

+0

mit Controller zu verwechseln, wie man –

+0

@AshishGoyal gut behandelt, ist es eine eckige Basis, vorschlagen, dass Sie von Tutorial Mate starten :). Wie auch immer ich antwortete auf Ihre Frage –