From the back-end, I am getting a string as construction,apply
- that means 2 words together.
Now I need to break them into 2 words and I need to use the ng-repeat
. I created a filter
to do that. It splits the string into an array with a length of 2, but how to use this in ng-repeat
?
Here is my code :
<div class="column design">
//app.Phase here is : `construction,apply`
<span ng-repeat="value in activeApp.Phase || commaBreak">{{$index}}</span> //instead of index i would like to show the word.
</div>
my filter:
angular.module("tcpApp")
.filter("commaBreak",
function () {
return function (value) {
if (!value.length) return;
return value.split(',');
}
});
What am I doing wrong here?
Here it is:
var myApp = angular.module('myApp',[]);
myApp.controller('MyCtrl', ['$scope', function($scope) {
$scope.name = "construction,apply";
}]);
myApp.filter("commaBreak",
function () {
return function ( value ) {
if( !value.length ) return;
return value.split(',');
}
});
On html part you need to use the single OR.
<div ng-controller="MyCtrl">
<p ng-repeat="value in name | commaBreak">{{value}}</p>
</div>
Here is the working example: http://jsfiddle.net/HB7LU/16459/