console.log在无状态函数表达式中?

时间:2018-01-17 13:22:28

标签: javascript reactjs syntax components

我确定这只是一种语法问题。我如何在无状态函数表达式中console.log

const Layer = (props) => (
  console.log(props); //breaks

3 个答案:

答案 0 :(得分:4)

它因为你隐式返回console.log而中断,你应该返回一些有效的jsx内容。

添加花括号并显式返回组件:

const Layer = (props) => { 
  console.log(props);
  return <div/> //return a valid React component
};

答案 1 :(得分:3)

无需使用大括号并添加返回符即可更改组件的结构。您可以这样做:

const Layer = (props) => console.log(props) || (
  ...whatever component does
);

答案 2 :(得分:2)

const StatelessComponent = props => {
   console.log(props);
   return (
      <div>{props.whatever}</div>
   )
}

请记住,在功能组件中没有渲染方法。 您的JSX应该写在函数的return部分中。那不是反应的具体情况。这就是箭头函数本身的行为。 祝您好运:)