-1
我的目標是將相同的顏色分配給特定對象中的所有事件。我的對象如下所示:將多個值添加到對象中的某個鍵js
var hConfig = [
{
label: "A",
criteria: ["Event0", "Event1"],
field: "evt"
},
{
label: "B",
criteria: ["Event2", "Event3"],
field: "evt"
},
{
label: "C",
criteria: ["Event4", "Event5", "Event6"],
field: "evt"
}
];
因此,屬於標籤的所有條件都應該具有相同的顏色。這項作業的功能是:
function highlightRegex (highlightConfig) {
// we will return an array of regex objects
var i;
var hl;
for (i = 0; i < highlightConfig.length; i++) {
hl = highlightConfig[i];
logger.info("hl object", hl);
hl.re = new RegExp(hl.criteria, "im");
}
}
function highlight (event, highlightConfig) {
// we will return the index if there is a match and -1 otherwise
var i;
var hl;
for (i = 0; i < highlightConfig.length; i++) {
hl = highlightConfig[i];
if (hl.re.test(event[hl.field])) {
return i;
}
}
return -1;
}
對於每一個數據,當事件名稱與一個在標準,我們指定一種顏色。
resultHighlight = highlight(value, hConfig);
value.evtColor = getColor(resultHighlight);
現在,如果我只爲標準密鑰傳遞一個值,此功能就完美了。
criteria: "Event1"
但如果我必須在標準鍵傳遞多個事件的名稱,然後它打破,並且不指定顏色的任何事件名稱。我應該如何將這些條件作爲一個值的數組來讀取,並確保它讀取正確?
是的,這是一個問題。此解決方案完美運作。謝謝 :) – user2128