2016-11-28 72 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;