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

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>
…
主站蜘蛛池模板: 神木县| 上饶市| 潮州市| 斗六市| 吉木萨尔县| 汝城县| 双牌县| 敦化市| 晋城| 育儿| 宕昌县| 竹溪县| 东光县| 岐山县| 孝昌县| 巫山县| 淮北市| 屯昌县| 乌兰察布市| 昭通市| 四子王旗| 革吉县| 内丘县| 白山市| 衡山县| 扶风县| 扎鲁特旗| 南安市| 花垣县| 永昌县| 固始县| 汉川市| 乡城县| 巩留县| 安西县| 石棉县| 苗栗市| 基隆市| 霍城县| 麻江县| 尖扎县|