2017-01-27 5 views
1

Я использую стек MEAN в своем приложении с AngularJS как мой интерфейс. Как я могу удалить Square Brackets [] и Double quotes "" в повторном ответе, My plunker на самом деле нам нужно показать role vlaues в моем приложении, чтобы мы использовали ng-repeat="mani in name.comments ", чтобы получить ответ, и мы получили ответ, как ["user"], ["admin"], ["kp"], что мы точно глядя нам нужны просто показать значения в одиночку, а не с [] Square Brackets и Double quotes .... для примера ответ будет: - значения не имеют в [] Square Brackets и Double quotes как 1. user , 2. admin, 3. kpКак мы можем удалить квадратные скобки [] и двойные кавычки «» в угловых js?

Мои данные: -

$scope.name = { 
"_id": "5863d3aaacaeddc00663bc07", 

"comments": [ 
{ 
"created": 1485511936350, 
"role": [ 
"user" 
], 
"email": "[email protected]", 
"name": "selvam R", 
"commentText": "mani selvam" 
}, 
{ 
"created": 1485511936350, 
"role": [ 
"admin" 
], 
"email": "[email protected]", 
"name": "selvam R", 
"commentText": "mani selvam" 
}, 
{ 
"created": 1485511936350, 
"role": [ 
"kp" 
], 
"email": "[email protected]", 
"name": "selvam R", 
"commentText": "mani selvam" 
} 
], 
"created": "2016-12-28T15:00:58.777Z", 
"isCurrentUserOwner": false 
}; 

Мой Html: -

<div ng-repeat="mani in name.comments "> 

       <td>{{$index + 1}}</td> 
       <td>{{mani.role }}</td> 

       </div> 
  • Пожалуйста, смотрите в My plunker для справки ...

  • Ожидая ответ был бы без [] Square Brackets и Double quotes ...

  • role находятся внутри массива, так что только он отображается с [] Square Brackets и Double quotes, поэтому, как мы можем удалить это, нам нужно показать только значения ... мы пробовали много способов, мы знаем, что это простая задача, но мы не можем решить эту проблему.

  • мы можем использовать CSS, чтобы удалить это? ... любой знает решение, пожалуйста, помогите нам ... спасибо

  • пожалуйста, обновите plunker, а также знать точное решение ....

ответ

4

Вам просто нужно выбрать первый элемент массива с индексом 0, используя:

{{ mani.role[0] }}

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

 
app.controller('MainCtrl', function($scope) { 
 
    $scope.name = { 
 
    "_id": "5863d3aaacaeddc00663bc07", 
 

 
    "comments": [{ 
 
     "created": 1485511936350, 
 
     "role": [ 
 
     "user" 
 
     ], 
 
     "email": "[email protected]", 
 
     "name": "selvam R", 
 
     "commentText": "mani selvam" 
 
    }, { 
 
     "created": 1485511936350, 
 
     "role": [ 
 
     "admin" 
 
     ], 
 
     "email": "[email protected]", 
 
     "name": "selvam R", 
 
     "commentText": "mani selvam" 
 
    }, { 
 
     "created": 1485511936350, 
 
     "role": [ 
 
     "kp" 
 
     ], 
 
     "email": "[email protected]", 
 
     "name": "selvam R", 
 
     "commentText": "mani selvam" 
 
    }], 
 
    "created": "2016-12-28T15:00:58.777Z", 
 
    "isCurrentUserOwner": false 
 
    }; 
 
});
<!DOCTYPE html> 
 
<html ng-app="plunker"> 
 

 
<head> 
 
    <meta charset="utf-8" /> 
 
    <title>AngularJS Plunker</title> 
 
    <script> 
 
    document.write('<base href="' + document.location + '" />'); 
 
    </script> 
 
    <link rel="stylesheet" href="style.css" /> 
 
    <script data-require="[email protected]" src="https://cdnjs.cloudflare.com/ajax/libs/angular.js/1.5.10/angular.min.js" data-semver="1.5.10"></script> 
 
    <script src="app.js"></script> 
 
</head> 
 

 
<body ng-controller="MainCtrl"> 
 

 
    <div ng-repeat="mani in name.comments "> 
 

 
    <td>{{$index + 1}}</td> 
 
    <td>{{ mani.role[0] }}</td> 
 

 
    </div> 
 

 

 
</body> 
 

 
</html>

+1

Спасибо за ваш ценный ответ ..... –

0

Ваш mani.role массив, так что-то вроде этого:

<td><span ng-repeat="r in mani.role">{{ r }} </span></td> 
3

Вы можете использовать метод toString() преобразовать массив, который в настоящее время отображается в строке. Как так:

 <td>{{mani.role.toString()}}</td> 

Это будет отображать его в виде строки, так что " и [] будут удалены.

Plunkr showing this.

+0

Спасибо за ваш ценный ответ ..... –

0

Ваши данные выглядят как данные JSON, так что вам нужно прочитать данные JSON через AngularJS путем создания модуля, как это:

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

App.controller('Ctrl', function($scope, $http) { 
    $http.get('data.json') 
     .then(function(res){ 
      $scope.data = res.data;     
     }); 
}); 

Кроме того, w3schools полезно в вашем случае $http in AngularJS

 Смежные вопросы

  • Нет связанных вопросов^_^