reactjs - 我可以让二维码出现在 4 行中吗
问题描述
我将生成的二维码存储在一个数组中。然后使用 map() 函数提取值。
var value = [];
var up = this.state.MonoQuantity;
for (var i = 0; i < up; i++) {
var rando = randomstring.generate(3);
value.push(this.state.Lotno + i + rando + this.state.mReward);
}
return value;
};
....
<>
{this.generateMono().map(n => {
return (
<>
<tr key={n} style={{ listStyleType: "none" }}>
<QRCode value={n} size={70} level={"H"} />
</tr>
<tr style={{ listStyleType: "none" }}>{n}</tr>
</>
);
})}
</>
解决方案
可以用来<td>
连续渲染
试试这个:
<tr>
{this.generateMono().map(n => {
return (
<>
<td key={n} style={{ listStyleType: "none" }}>
<QRCode value={n} size={70} level={"H"} />
</td>
</>
);
})}
</tr>
要在每行中制作具有 4 个元素的元素块,您可以执行以下工作示例:https ://codesandbox.io/s/happy-bash-xxgfj
let i,
j,
arr,
chunk = 4; // number of element required in each row
let chunkedData = [];
const data = this.generateMono();
for (i = 0, j = data.length; i < j; i += chunk) {
arr = data.slice(i, i + chunk);
chunkedElements.push(
<tr>
{arr.map(n => {
return <td><QRCode value={n} size={70} level={'H'}/></td>;
})}
</tr>,
);
}
render;
{
return (
<div className="App">
{chunkedData}
</div>
);
}
希望这可以帮助!!快乐编码
推荐阅读
- reactjs - Webpack React Custom ServiceWorker 一切未定义
- google-sheets - 通过 Google 脚本 HTTP GET 到 Binance API
- elasticsearch - Elasticsearch 查询将多个值匹配到单个字段
- java - 如何以有效的方式从 Firebase 数据库中检索数据
- python - 使用 Django3.1 时无法显示传递给模板的上下文
- python - 如何为调用 SetWindowCompositionAttribute 的窗口实现圆角
- elasticsearch - 用于不确定量 i18n 的 Elasticsearch
- ios - 如何从 Firestore 检索自动生成的 documentID,以重用 documentID,因此我的数据不会被替换
- python - 如何忽略正则表达式中不需要的模式
- c++ - 为什么在这种情况下模板参数是参考?