2016-07-23 70 views
0

在我的反應應用程序中,我有以下組件。 props.schedule是一個xml響應。由於某種原因,mapgetAttrbute不能一起工作,所以我被卡住了。reactjs組件從XML獲取數據與js

組件

const TimeItem = (props) => { 
    const schedule = props.schedule; 
    ..... 

    return (
    .... 
); 
} 

的console.log(時間表)返回此:

<trip origin="SFIA" destination="FRMT" fare="11.65" origTimeMin="7:47 AM" origTimeDate="07/23/2016 " 
    destTimeMin="9:18 AM" destTimeDate="07/23/2016" clipper="4.35" tripTime=""> 
    <leg order="1" transfercode="N" origin="SFIA" destination="BALB" origTimeMin="7:47 AM" origTimeDate="07/23/2016" 
    destTimeMin="8:06 AM" destTimeDate="07/23/2016" line="ROUTE 2" trainHeadStation="PITT" trainIdx="8"/> 
    <leg order="2" transfercode="N" origin="BALB" destination="BAYF" origTimeMin="8:13 AM" origTimeDate="07/23/2016" 
    destTimeMin="8:54 AM" destTimeDate="07/23/2016" line="ROUTE 12" trainHeadStation="DUBL" trainIdx="8"/> 
</trip> 

我想收集所有由,加入leg標籤line ATTRS。所以在這種情況下,我想獲得"ROUTE 2, ROUTE 12"。也想知道在這個反應組件的情況下我應該在哪裏放置這個功能。

回答

0

你將需要一些東西來解析XML到一個JS對象。我會推薦xml2js:https://www.npmjs.com/package/xml2js

還有其他一些,但它們非常相似。

+0

約旦,我有點困惑。我也使用'trip'標籤的attr值,並且這個組件中的'schedule.getAttribute(「origTimeMin」)'正常工作。原始的xml對象包含更多的行程,我用'DOMParser()。parseFromString(responseXML,「text/xml」)'分析。所以你認爲我應該再次解析已經解析過的單一肚子的孩子的腿? –