我对 的用法感到困惑,并且当它是反应原生事物时无法区分它何时是 JavaScript 事物(我的意思是 JSX)

Posted

技术标签:

【中文标题】我对 的用法感到困惑,并且当它是反应原生事物时无法区分它何时是 JavaScript 事物(我的意思是 JSX)【英文标题】:I get confused about the usage of and cannot distinguish when it is a JavaScript thing when it is react native thing (i mean JSX)我对 的用法感到困惑,并且当它是反应原生事物时无法区分它何时是 JavaScript 事物(我的意思是 JSX) 【发布时间】:2018-03-20 03:07:30 【问题描述】:

我正在学习 react nativeES6。我阅读了许多文档,但有时对代码感到困惑。例如,这里:

return (
      <View ...this.panResponder.panHandlers>
        this.renderCards()
      </View>
    );

我知道... 会打开对象并将其作为View 道具传播,但为什么我们需要用 包装?

【问题讨论】:

What do curly braces mean in JSX (React)?的可能重复 @DavidRawson:另一个问题是关于一组不同的 【参考方案1】:

花括号是一种特殊语法,让 JSX 解析器知道它需要将它们之间的内容解释为 javascript 而不是字符串。

当您想在 JSX 中使用 JavaScript 表达式(如变量或引用)时,您需要它们。

部分复制自Daniel Sandiego对“What do curly braces mean in JSX (React)? - Stack Overflow”的回答。

【讨论】:

就CC BY-SA 3.0 下的归属要求而言,仅指向另一个问题或答案的链接是不够的,所有用户在 Stack Exchange 上贡献的内容都根据该许可证分发。您需要类似的内容:'以下内容来自对“What do curly braces mean in JSX (React)? - Stack Overflow”的回答,Daniel Sandiego,版权所有 2017,在CC BY-SA 3.0 下获得许可'。【参考方案2】:

但是为什么我们需要用包装

只是决定“传播道具”需要封装在 中。据我记得,这个决定没有技术原因。

FWIW,我赞成省略它们。


一般来说,只要您在 JSX 上下文中, 就是 JSX 的一部分。您还可以在此处查看语法规范:https://facebook.github.io/jsx/

【讨论】:

以上是关于我对 的用法感到困惑,并且当它是反应原生事物时无法区分它何时是 JavaScript 事物(我的意思是 JSX)的主要内容,如果未能解决你的问题,请参考以下文章

有没有办法使用排毒来测试反应原生中闪屏的发生?

对异步和承诺的困惑。反应原生

我对 SOAP 命名空间感到困惑

我对运行时或编译时是否进行自动内存分配感到困惑

反应路由器和嵌套路由

对反应模式/架构感到困惑