【发布时间】:2020-06-15 07:33:21
【问题描述】:
import { connect } from 'react-redux'
import { Link } from 'react-router-dom'
class MyStories extends React.Component {
addFavorite = (e) => {
this.setState({
bgcolor: "blue"
})
}
render () {
const { stories } = this.props;
const { storyBriefs } = this.props.stories.length > 0 ?
stories.map(t => (<div className="menu-inner-container"><p key={t.id}><Link to={`/stories/${t.id}`}>{t.attributes.title}</Link>
<div className="addFavoriteCss"
style={{backgroundColor: this.state.bgColor}}
onClick={this.addFavorite}> Favorite</div>
</p></div>))
//refactor - create a button that will allow for us to mark which our favorites are
return (
{ this.props.storyBriefs }
);
}
}
const mapStateToProps = state => {
return {
stories: state.myStories
}
}
export default connect(mapStateToProps)(MyStories)
收到此错误
./src/components/MyStories.js 第 26 行:解析错误:意外的令牌,应为“:”
return (
^
{ this.props.storyBriefs }
);
}
我将功能组件转换为类组件,以便我可以操纵状态以更改收藏按钮的颜色——(我不能对按钮功能使用钩子或 redux)谁能告诉我我是什么做错了吗?
【问题讨论】:
-
{ this.props.storyBriefs }不是有效的对象语法 - 它甚至是有效的道具吗?也许你只想要return ( { storyBriefs } ) -
我刚刚收到了 {storyBriefs} 并遇到了同样的错误。所以我改回来了
-
好吧,使用
return ( { storyBriefs: storyBriefs } )- 也许你的环境不理解对象简写 -
但仍然出现同样的错误
-
即使是
return ( { storyBriefs: storyBriefs } )?我怀疑这是相同的错误
标签: javascript reactjs button redux state