2017-01-27 273 views
1

我在使用AngularJS作爲我的前端應用程序中使用MEAN堆棧。我怎樣才能在反覆的答案刪除Square Brackets []Double quotes ""My plunker實際上我們需要在我的應用程序顯示role vlaues所以我們使用ng-repeat="mani in name.comments "得到答案,我們得到了像["user"]答案,["admin"]["kp"],我們究竟看,我們只需要單獨顯示值,不與[] Square BracketsDouble quotes .... 例如答案是: - 值是沒有[] Square BracketsDouble quotes1. 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 BracketsDouble quotes ...

  • This role是在陣列中,所以只有它與[] Square BracketsDouble quotes顯示,所以我們如何消除這一點,我們只需要顯示值...我們已經嘗試了很多方式,我們知道這是簡單的任務,但我們無法解決這個問題。

  • 我們可以用css來刪除此?......任何人知道的解決方案,請幫助我們...謝謝

  • 請更新plunker以及知道確切的解決方案....

回答

4

您只需要使用以下命令選擇數組的第一個元素:

{{ 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數據,那麼你需要的是通過這樣的創建模塊通讀AngularJS JSON數據:在你的情況$http in AngularJS

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

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

而且,W3Schools的有益