我正在尝试在React JSX中执行以下操作(其中ObjectRow是一个单独的组件):
<tbody>
for (var i=0; i < numrows; i++) {
<ObjectRow/>
}
</tbody>
Run Code Online (Sandbox Code Playgroud)
我意识到并理解为什么这不是有效的JSX,因为JSX映射到函数调用.然而,来自模板领域并且是JSX的新手,我不确定如何实现上述(多次添加组件).
你能否render在React组件中的方法中使用注释?
我有以下组件:
'use strict';
var React = require('react'),
Button = require('./button'),
UnorderedList = require('./unordered-list');
class Dropdown extends React.Component{
constructor(props) {
super(props);
}
handleClick() {
alert('I am click here');
}
render() {
return (
<div className="dropdown">
// whenClicked is a property not an event, per se.
<Button whenClicked={this.handleClick} className="btn-default" title={this.props.title} subTitleClassName="caret"></Button>
<UnorderedList />
</div>
)
}
}
module.exports = Dropdown;
Run Code Online (Sandbox Code Playgroud)

我的评论显示在用户界面中.
处理评论的正确方法是什么?
更新:
谢天谢地,这有效:
'use strict';
var React = require('react'),
Button = require('./button'),
UnorderedList = require('./unordered-list');
class Dropdown extends …Run Code Online (Sandbox Code Playgroud) 有没有办法在React JSX中插入HTML注释节点,就像插入组件或DOM节点一样?
例如,像:
React.createElement(Comment, {}, "comment text");
Run Code Online (Sandbox Code Playgroud)
会呈现给:
<!-- comment text -->
Run Code Online (Sandbox Code Playgroud)
这个想法是评论在页面上可见,所以{ /* this /* }不回答我的问题.
请注意,以下相关问题没有答案,并要求有些不同的东西:
我只想渲染一个注释节点.我注意到React基础架构自己呈现HTML注释,所以也许有一种(稍微有些hacky?)方式也可以.
我在React中将{和}显示为文本时遇到问题.我看到一个类似的问题,有人说将整个字符串包裹在curlies中,但这不起作用:
let queries_block = this.state.previous_queries.map((dataset) => {
return (<p>{"{{}}"}<p>)
});
if (results) {
results_block = (
<div>
<p>Queries:</p>
{queries_block}
<br/><br/>
<p>Results: {results_count}</p>
<JSONPretty id="json-pretty" json={results}></JSONPretty>
</div>
);
} else {
results_block = null;
}
Run Code Online (Sandbox Code Playgroud)
的return (<p>{"{{}}"}<p>)原因
ERROR in ./src/components/app.js
Module build failed: SyntaxError: Unexpected token, expected } (47:13)
45 | <JSONPretty id="json-pretty" json={results}></JSONPretty>
46 | </div>
> 47 | );
| ^
48 | } else {
49 | results_block = null;
50 | }
@ ./src/index.js 15:11-38 …Run Code Online (Sandbox Code Playgroud) 我正在使用 ReactJS,我需要在 JSX 中添加可见的 HTML 注释(在 html 源代码中),但我不知道该怎么做。
第三方供应商需要此注释来对注释之间的 html 进行一些处理。
<!-- trans_disable_start -->
<div> testing </div>
<!-- trans_disable_end-->
Run Code Online (Sandbox Code Playgroud)
我尝试了以下选项,但在 html 源中看不到评论。
{/* <!-- trans_disable_start -->*/}
Run Code Online (Sandbox Code Playgroud)
尝试使用这个库 - react-render-html
{renderHTML('<!-- trans_disable_start -->')}
Run Code Online (Sandbox Code Playgroud)
任何想法/想法表示赞赏。
更新 1:
我尝试使用下面的 JS 库,但这不起作用,因为我使用的是服务器端渲染,并且我在初始加载时在页面源中看到以下值(而不是评论)
https://github.com/optimalisatie/react-jsx-html-comments
<react-comment data-reactid="18">trans_disable_start</react-comment>
Run Code Online (Sandbox Code Playgroud)