2016-11-28 63 views
0

一個Reactify錯誤:意外標識符

var React = require('react'); 
 
var EventListItem = require('./EventListItem.js'); 
 

 
var EventList = React.createClass({ 
 
\t var events = this.props.events; 
 
\t if (!Array.isArray(events)) throw new Error ('it must be Array'); 
 
\t var eventsComps = events.map(function(eve){ 
 
\t \t return (<EventListItem key={eve.key} 
 
\t \t title={eve.title} 
 
\t \t description={eve.description} 
 
\t \t voteCount={eve.voteCount} />) 
 
\t }); 
 

 
\t render:function(){ 
 
\t \t return(
 
\t \t \t <div id="events" className=""> 
 
\t \t \t \t 
 
\t \t \t \t {eventsComps} 
 
\t \t \t \t 
 
\t \t \t </div> 
 
\t \t); 
 
\t } 
 
}); 
 

 
module.exports = EventList;

5號線:意外的標識 我搜索的問題,並檢查了我的「」或‘’但我沒有發現問題,有什麼錯它?

+2

您不能在對象文本('{...}')內放置任意語句(例如'var events = this.props.events;')。它看起來像所有的代碼應該在'render'函數內。您可以在這裏瞭解更多關於JavaScript基礎的知識:http://eloquentjavascript.net。 –

+0

這是一個對象文字,而不是一個塊。你不能有這樣的陳述... – Li357

回答

0

您不能在object literal內編寫任何隨機語句。你所有的代碼都需要放在你的渲染函數中,或者你必須定義一個不同的函數並將其寫入其中。

var React = require('react'); 
var EventListItem = require('./EventListItem.js'); 

var EventList = React.createClass({ 

    render:function(){ 
      var {events} = this.props; 
     if (!Array.isArray(events)) throw new Error ('it must be Array'); 
      var eventsComps = events.map(function(eve){ 
      return (<EventListItem key={eve.key} 
      title={eve.title} 
      description={eve.description} 
      voteCount={eve.voteCount} />) 
     }); 
     return(
      <div id="events" className=""> 

       {eventsComps} 

      </div> 
     ); 
    } 
}); 

module.exports = EventList;