由于我的某个组件中存在假定的语法错误,因此Rails无法呈现我刚开始构建的基本反应组件。到目前为止,我还没有弄清楚为什么这种语法不正确。
以下是错误:
ActionView::Template::Error (SyntaxError: unknown: Unexpected token (11:11)
9 | render () {
10 | return (
> 11 | {this.renderMeetings()}
^
12 | );
13 | }
14 | ):
1: <h1>Events</h1>
2:
3: <%= react_component('SearchContainer', {}, {prerender: true}) %>
4:
5: <form action="/search_event" accept-charset="UTF-8" method="get">
6: <input type="search" name="search" placeholder="Search meetings"/>
以下是可疑组件:
class SearchResults extends React.Component {
renderMeetings() {
return this.props.meetings.map((meeting) => {
return <SearchResultsPost meeting={meeting} />
})
}
render () {
return (
{this.renderMeetings()}
);
}
}
非常感谢您提供的任何帮助!
答案 0 :(得分:1)
{}
内添加一些javascript
代码,则需要 html element
,因为您直接从return
调用函数,然后{}
不是必填,如果您使用div
,则需要使用{}
,请按以下方式编写:
render () {
return (
<div>{this.renderMeetings()}</div>
);
}
或
render () {
return (
this.renderMeetings()
);
}