2013-10-15 38 views
0

我有數據的格式如下AngularJS字符串分割問題

"yes | Yes no | No" 

此字符串代表不同的東西回來。總的來說,它代表了一系列單選按鈕。在|的左側是單選按鈕的實際值。右側是標籤。從而此字符串代表以下:

是(值=是) 否(值=否)

的字符串存儲幾層深成巨對象,並且因此,我需要能夠分裂各個組件的啓用和使用,同時可靠地維持價值第一和標籤第二的模式。任何關於如何使用角度來實現這一點的建議?

回答

0

在數據返回的服務中,您需要編寫一個函數來解析並組織它。您可能會從自定義過濾器中受益,但其真正不適用於此,因爲過濾器傳統上意味着在視圖上使用。這不是一個真正的角度問題,除非你的問題是廣泛的如何在角度應用程序內完成。

0

我同意@Fourth。這不像是一個真正的「角度」問題。它更多的是一個JavaScript問題。總之,這裏是我的一個在線解決方案(雖然它的晦澀):

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]是標籤。我知道它是一個非常多毛的解決方案,但是無論誰決定將這些單選按鈕的值編碼成一個與空格和垂直條都分隔不好的字符串,他們是應該責備的。