2013-10-15 4 views
0

나는 데이터가AngularJS와 문자열 분할 문제

"yes | Yes no | No" 

이 문자열은 몇 가지를 나타내는 다음과 같은 형식으로 돌아오고있다. 전체적으로 일련의 라디오 버튼을 나타냅니다. |의 왼쪽에 | 라디오 버튼의 실제 값입니다. 오른쪽이 라벨입니다. 이 문자열은 따라서 나타내는 다음 문자열 깊은 거대한 객체에 여러 레이어를 저장되고, 따라서 내가 분할 할 수 있어야

예 (아무 값 =) (값 = 예) 없음 개별 구성 요소를 위로 가져와 첫 번째 값과 두 번째 값을 갖는 패턴을 안정적으로 유지하면서 사용합니다. 각을 사용하여 이것을 달성 할 수있는 방법에 대한 제안?

답변

0

데이터가 다시 제공되는 서비스에서이를 구문 분석하고 구성하는 기능이 있어야합니다. 필터는 사용자 정의 필터의 이점을 얻을 수 있지만 필터는 전통적으로 뷰에서 사용하기 때문에 실제로 적용 할 수 없습니다. 귀하의 질문이 광범위하게 각도 애플 리케이션 내에서 그것을 수행하는 방법이 아니라면 이것은 정말 각도 질문입니다.

0

나는 @Fourth에 동의합니다. 이것은 진정한 "각도"문제처럼 느껴지지 않습니다. 그 이상 자바 스크립트 문제.

var fullString = "yes | Yes no | No"; 
var parts = fullString.split(/[ |]/).filter(function(str){ return str !== '';}); 
// parts is now ["yes", "Yes", "no", "No"] 

을 그리고 당신은 당신의 라디오 버튼에 대한 레이블과 값을로 배열의 값을 사용 : 어쨌든, 여기에 (비록 그 꽤 털이) 내 한 줄 솔루션입니다. 의미, parts[0]은 첫 번째 라디오 버튼의 값이고 parts[1]은 라벨입니다. 나는 그 꽤 털이 많은 솔루션을 알고 있지만, 라디오 버튼의 값을 공백과 수직 막대로 구분되지 않은 문자열로 인코딩하기로 결정한 사람은 누구나 책임이 있습니다.