![](/img/trans.png)
[英]Syntax error 'Unexpected token, expected }' is thrown after trying to render JSX inside a callback function
[英]JSX syntax arrow function inside render
我刚刚在另一个问题中看到了这段代码,我不明白它是如何工作的:
let Parent = () => (
<ApiSubscribe>
{api => <Child api={api} />}
</ApiSubscribe>
)
我理解这样的事情:
let Parent = ({api}) => (
<ApiSubscribe>
<Child api={api} />
</ApiSubscribe>
)
但之前从未在渲染中看到{foo => <Bar bar={bar} />}
,
有人能帮助我理解这个吗?
一个组件可以访问给予其与子元素children
的道具。 如果函数是作为子函数给出的,则组件可以调用此函数。 调用children
函数的组件然后可以使用它认为合适的任何参数调用该函数。
例
const Child = props => { return props.children('test'); }; const Parent = () => ( <Child> {function(arg1) { return <div> This is a {arg1} </div>; }} </Child> ); ReactDOM.render(<Parent />, document.getElementById("root"));
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.1.0/react-dom.min.js"></script> <div id="root"></div>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.