首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在ClojureScript中使用hat (^)字符

在ClojureScript中使用hat (^)字符
EN

Stack Overflow用户
提问于 2015-08-20 11:24:56
回答 1查看 126关注 0票数 2

下面的代码中使用了hat字符(^),这使我感到困惑,该字符已从试剂-电话中解除。

代码语言:javascript
复制
^{:key phone} [phone-component phone]

phone-component本身就是一个函数(但不像在向量中那样被调用),phone将是一个带有键的映射,比如:battery

我的研究^表示元数据或类型提示,但没有帮助!

这是文件:core.cljs

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-20 12:30:28

首先,确保您了解key在反应中的作用,因为试剂只是将它传递到反应过程中:

http://facebook.github.io/react/docs/multiple-components.html#dynamic-children

..。您可以通过为每个子节点分配一个键来唯一地标识它: ..。 当反应和解关键的孩子,它将确保任何有钥匙的孩子将被重新排序(而不是重击)或销毁(而不是重复使用)。

接下来,^{...}构造只是将元数据附加到下一个表单

http://clojure.org/reader#The%20Reader--Macro%20characters

注意:在本例中,它是而不是类型提示。这将需要一个:tag元数据密钥。

本例中的下一个形式是一个简单的向量[..],其中第一个元素是对要(最终)调用的组件的引用。

试剂接受数据结构(嵌套向量),并从它生成虚拟DOM元素,并通过它进行反应。它还将调用嵌套组件。

因此,试剂将读取每一个向量的元数据,你返回,并传递任何:key,你指定的反应。这很简单,这样就可以识别每个重呈现中的元素。

因此,在您的示例中,phone将被传递到作为关键的响应。请注意,键最终将成为react元素的DOM属性中的字符串。因此,最好传递一个不太长的字符串,这样就不会使DOM属性混乱。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32116964

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档