簡體   English   中英

反應本機,在for循環中創建按鈕

[英]React native, creating buttons in for loop

我正在嘗試從eventbrite的API獲取一些數據。

數據是事件的名稱,該名稱將插入到列表中。

在渲染中,創建的按鈕與我從API獲得的名稱數量一樣多

我下面有幾個問題。

  1. 如何將API中的信息添加到數組列表中-這樣我就可以使用索引和值了。

  2. 如何在forloop中創建按鈕

例如

for ( var i =0; i<5; i++){
 <Button
 onPress={onPressLearnMore}
 title="Learn More"
 color="#841584"
 accessibilityLabel="Learn more about this purple button"/>
} // % buttons are created. 

這是我的代碼。

 export const renderButtons1 = (numOfBtns,title,site,navigated) => {
    const views1 = [];
    for ( var i = 0; i < numOfBtns; i++) {
            views1.push(
            <Button 
                 onPress={(i) => navigate('EventsList', { 
                     Title: title[i]
                })
            }
                 title = {title[i]}
                 color="#841584"
             />);


    }
componentDidMount(){
return fetch('https://www.eventbriteapi.com/v3/events/search/location.address=glasgow&token=F7AWKEHKD6BW2TZKWO7N&expand=venue')
  .then((response) => response.json())
  .then((responseJson) => {   
      for(var x in responseJson.events){       
          this.setState({
              state : this.state[Events].push(responseJson.events[x][0][0]["text"],"\n",)
 });
}})
.catch((error) => {
    console.error(error);
});
}

render() {
        need to make buttons as many as the number of gotten name from API 
}
  1. 對於問題1,api數據的數組形式將取決於數據在發送到您的應用程序之前的結構。 您可能需要為此遮住更多的光線。

  2. 循環渲染視圖,嘗試

     const renderButtons = () => { const views = []; for ( var i =0; i<5; i++){ views.push( <Button key={i} onPress={onPressLearnMore} title="Learn More" color="#841584" accessibilityLabel="Learn more about this purple button" />); } // % buttons are created. return views; } 

在渲染方法中調用renderButtons()

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM