官术网_书友最值得收藏!

Back to work

"That's good to start, Shawn. Let's move back to the task of building our app using Open Library's Recent changes API now. We already have a basic prototype ready without using ReactJS."

"We will be slowly replacing parts of it using ReactJS."

"This is how the information is displayed right now, using server-side logic, as follows:"

"First task that we have is to display the information retrieved from the Open Library Recent Changes API in a table using ReactJS similar to how it's displayed right now using server-side."

"We will be fetching the data from the Open Library API similar to the following:"

var data = [{ "when": "2 minutes ago",
              "who": "Jill Dupre",
              "description": "Created new account"
            },
            {
              "when": "1 hour ago",
              "who": "Lose White",
              "description": "Added fist chapter"
            },
            {
              "when": "2 hours ago",
              "who": "Jordan Whash",
              "description": "Created new account"
            }];

"Let's use this to prototype our app for now. Before that, let's take a look at the simple HTML version of this app. In our React.render method, we start returning a table element, as follows:"

var App = React.createClass({

  render: function(){
 return <table>
 <thead>
   <th>When</th>
   <th>Who</th>
   <th>Description</th>
 </thead>  
   <tr>
     <td>2 minutes ago</td>
     <td>Jill Dupre</td>
     <td>Created new account</td>
   </tr>
   <tr>
     <td>1 hour ago</td>
     <td>Lose White</td>
     <td>Added fist chapter</td>
   </tr>  
   <tr>
     <td>2 hours ago</td>
     <td>Jordan Whash</td>
     <td>Created new account</td>
   </tr>  
 </table>
  }
});

"This should start displaying our table with three rows. Now, go ahead and add a heading at top of this table from the React App, as follows:"

…
return <h1>Recent Changes</h1>
           <table>
          ….
          </table>
…

"There, something like that?" asked Shawn. "Oh, that didn't work."

"That's because React expends our render method to always return a single HTML element. In this case, after you added the h1 heading, our app started returning two elements, which is wrong. There'll be many cases when you will come across this. To avoid this, just wrap the elements in a p or span tag. The main idea is that we just want to return a single element from the render method."

"Got it. Something like this?"

…
return <p>
         <h1>Recent Changes</h1>
           <table>
          ….
          </table>
         </p>
…
主站蜘蛛池模板: 柯坪县| 广宗县| 三穗县| 日土县| 靖西县| 广宗县| 砀山县| 图木舒克市| 新营市| 益阳市| 黔东| 沾化县| 肃北| 友谊县| 五指山市| 雷山县| 安溪县| 罗田县| 舞阳县| 乐业县| 柯坪县| 桂平市| 永安市| 南雄市| 攀枝花市| 海原县| 宜宾市| 红河县| 阳春市| 肥西县| 平湖市| 蕉岭县| 惠州市| 稷山县| 西和县| 孟州市| 静安区| 开江县| 无棣县| 东城区| 永昌县|