Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >javascript: React -循环/映射中每行呈现的组件(或列)的限制数

javascript: React -循环/映射中每行呈现的组件(或列)的限制数
EN

Stack Overflow用户
提问于 2017-08-21 04:20:08
回答 2查看 10.3K关注 0票数 1

我知道这看起来很容易..。但我不知道怎么弄到它。因此,任何建议都是受欢迎的。谢谢。

我有什么

我正在使用React.js。我有一个元素数组(假设为20个)。

我想要什么

我希望每一行呈现4个元素(例如)。

什么问题是

我不知道如何限制每行组件/列的数量。

此代码在一行中呈现所有组件..。我怎样才能限制它?

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
populatingLayout() {
    arrayData.map(item => {
        return (
        <div className="FlexRow">
            <div className="FlexColumn">
                <Component dataProp={item} />
            </div>
        </div>
        )
    }
}

render() {
     return (
         <div className="FlexGrid">
             {this.populatingLayout()}
         </div>
    )
}

提前感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-21 06:37:07

我想你是在找这样的东西。假设您的元素是数组中的20个div元素。然后,您可以在一个单独的行中显示每四个元素,如下所示。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
class Hello extends React.Component {

constructor(props) {
     super(props);
   }
   
  
//this function will return array of element 20 divs in this case 
multipleElements() {

   let elements = [];
   for(let i = 0; i < 20; i++) {
            elements.push(
                  <div key={i}> element{i+1} </div>
           )
   }
    return elements;
}

//this function will separate each four element to display 
separateElement () { 
 var separateElements = [];
 var multiElements = this.multipleElements();

for(var i = 0; i < multiElements.length; i+=4) {
     var oneRow = [];
     oneRow.push(multiElements.slice(i, i+4).map(item => {
   return <div style={{display: 'inline-block'}}>{item}</div>
}))
separateElements.push(oneRow.map(itm => {return <div>{itm}</div>}))
}
return separateElements;
}
            
          
            
render() {
   return (<div> {this.separateElement()} </div>);
 }
};

ReactDOM.render(
 <Hello/>,
 document.getElementById('container')
);
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.0/react.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/react/15.0.0/react-dom.min.js"></script>

<div id="container">
    <!-- This element's contents will be replaced with your component. -->
</div>

票数 5
EN

Stack Overflow用户

发布于 2017-08-21 04:29:25

你可以使用这种风格:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
.row {
  float: left;
  position: relative;
  width: 100%;
}

.column {
  float: left;
  position: relative;
  width: 25%;
}

render() {
     return (
         <div className="FlexGrid">
             <div className="row">
                 arrayData.map(item => <div className="FlexColumn"><Component dataProp={item} /></div>);
             </div>
         </div>
    )
}

使用这个css,您的行将是父元素的整个宽度,而您的列将从您的行的1/4宽度。

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

https://stackoverflow.com/questions/45796987

复制
相关文章
go: 当我们在使用sync.Map时,发生了什么
sync.Map是我比较喜欢的一个库,用了非常久,今天突发奇想瞧瞧它的实现。又一次被宇宙中第二NB的语言--go 折服了。 这里准备写一篇文章,讨论下当使用sync.Map执行操作的时候,会发生什么。
超级大猪
2020/07/06
9710
当我们和业务在讨论“预测”时,到底在讨论什么?
所谓“预测”,统计学上是有精确定义的:是对事物的发展趋势和在未来时期的数量表现做出推测和估计的理论和技术——它是一个概率结论。可是当你在百度上搜索“预测”这个关键字时,会出现好几页的结果都是五行、八卦、星座、塔罗牌。这可能就是真实的预测和多数人眼中的“预测”之间的差异:一个算数,一个算卦。
张俊红
2020/11/19
4300
当我们和业务在讨论“预测”时,到底在讨论什么?
当我们在讨论APS时,我们在讨论什么?
高级计划与排程(Advanced Planning and Scheduling,简称“ APS” ),是解决生产排程和生产调度问题,常被称为排序问题或资源分配问题。它是利用许多先进的规划管理技术,包括限制理论(Theory Constraints, TOC)、运筹学(Operations Research, OR)、遗传算法(Genetic Algorithms, GA)、限制条件满足技术(Constraint Satisfaction Technique, CST)等,在有限资源下,寻求供给与需求之间的平衡规划;同时,利用信息的储存与分析能力,以最短的期限,达到最有效的规划。
李英杰同学
2020/02/11
6990
当我们在讨论APS时,我们在讨论什么?
为什么在重写equals方法时都要重写equals方法
为什么在重写equals方法时都要重写equals方法呢: 首先equals与hashcode间的关系是这样的:
知识浅谈
2021/09/27
6990
为什么在重写equals方法时都要重写hashcoe方法
object的equals默认是比较内存地址,hashcode默认是内存地址的哈希值,如果equals重写了,他为true时两个对象并不一定内存地址一样,这个时候,如果不重写hashcode,那么他会默认用object的hashcode方法,所以他们的hashcode值是不一样的。就导致两个对象equals相等但是hashcode不相等,这个对象应用在hashmap作为key时他们是先判断hashcode是否相等再比较equals,不相等就为不同的key,所以这样的对象不能应用在hashmap和set里作为key。
知识浅谈
2022/05/12
5490
当我们在分析异常数据时,我们在分析什么
数据异常分析,是数据分析工作中最常见且重要的分析主题,通过一次次的异常分析来明确造成数据波动的原因,建立日常的的运营工作和数据波动之间的相关性以及贡献程度的概念,从而找到促进数据增长的途径,改变数据结果。
小莹莹
2018/07/24
2.4K0
当我们在分析异常数据时,我们在分析什么
当我们讨论数据挖掘时,我们在讨论什么?
? ? ? ? ? ? ? ? ? ? ?
钱塘数据
2018/03/06
7900
当我们讨论数据挖掘时,我们在讨论什么?
java中println和printf有什么区别_string和int的区别
输出结果为: 12 即打印了int型变量i的值之后不换行继续打印int型变量j的值。
全栈程序员站长
2022/11/10
6690
java中string转换为int(int char)
// String change int public static void main(String[] args) { String str = “123”; int n; // first method // n = Integer.parseInt(str); n = 0; n = Integer.parseInt(str); System.out.println(“Integer.parseInt(str):”+ n); System.out.println(“\n”); //second method //n = Integer.valueOf(str).intValue();
全栈程序员站长
2022/07/28
1.9K0
java中string转换为int(int char)
当我们聊元宇宙时,我们在聊些什么?
  细数一下游戏画面的发展历程,从最初的仅由点与线构成的字符画文字冒险游戏,到现在用上实时光线追踪的《战地5》,游戏的画面愈发真实,甚至可以做到以假乱真,与照片无异。但是最核心的一点,游戏的操作与互动
科技旋涡
2022/03/30
2560
当我们聊元宇宙时,我们在聊些什么?
为什么重写 equals 时必须重写 hashcode?
equals 默认是和==一样,判断引用是否相等的,一般需要覆写后才能实现真正的判等。
水货程序员
2018/11/13
2.4K0
String中new String(byte[] b, int n, int m)的理解
String item = new String(b, n, m)的用法,其中b为byte[]数组,n,m为int类型. 简单的来说就是byte数组b从下标为n开始前进m个下标的那一段数组变为字符串item。概念比较难理解,下面直接看例子吧! 例如1:              b={'1' ,'2', '3', '4', '5', '6', '7', '8'};           String item=new String(b,2,2)           结果 item=34 例如2:            String item=new String(b,0,3)           结果 item=123 看例子可以很清楚的看到new String(byte[] b, int n, int m)中个参数的作用。这种情况一般出现在要对byte进行处理的情况。 例如Android中加密和解密的过程就会用到这种情况。
林老师带你学编程
2022/11/30
5240
Python基础-int和string互
int转成string,函数int(string) string转成int,函数str(number) 如下:
py3study
2020/01/10
6380
学问Chat UI(2)
前言 上文讲了下要去做哪些事,重点分析了融云Sdk中RongExtension这个扩展控件,本文来学习下同样是融云Sdk中的AutoRefreshListView如何适配多种消息的实现方式,写的有不足之处还望指出。 AutoRefreshListView如何适配多种消息 本文不分析AutoRefreshListView内部源码,从数据适配角度分析如何适配上文讲到的多种聊天消息; 既然从AutoRefreshListView开始,那先来了解下一般使用ListView的步骤: 布局器寻找ListView控件,
用户1148881
2018/01/17
8960
学问Chat UI(2)
scala String to Int
object StringUtils { /** * 判断字符串是否是纯数字组成的串,如果是,就返回对应的数值,否则返回0 * @param str * @return */ def strToInt(str: String): Int = { val regex = """([0-9]+)""".r val res = str match{ case regex(num) => num case _ => "0"
大数据工程师-公子
2019/03/14
1.6K0
2018-11-23 当我们输入一条 SQL 查询语句时,发生了什么?
我们经常说,看一个事儿千万不要直接陷入细节里,你应该先鸟瞰其全貌,这样能够帮助你从高维度理解问题。同样,对于 MySQL 的学习也是这样。平时我们使用数据库,看到的通常都是一个整体。比如,你有个最简单的表,表里只有一个 ID 字段,在执行下面这个查询语句时:
Albert陈凯
2018/12/17
7870
2018-11-23 当我们输入一条 SQL 查询语句时,发生了什么?
携程一面:String 类型的变量和常量做“+”运算时发生了什么?
因为,比较 String 字符串的值是否相等,可以使用 equals() 方法。String 中的 equals 方法是被重写过的。Object 的 equals 方法是比较的对象的内存地址,而 String 的 equals 方法比较的是字符串的值是否相等。
Guide哥
2021/09/16
3390
携程一面:String 类型的变量和常量做“+”运算时发生了什么?
因为,比较 String 字符串的值是否相等,可以使用 equals() 方法。String 中的 equals 方法是被重写过的。Object 的 equals 方法是比较的对象的内存地址,而 String 的 equals 方法比较的是字符串的值是否相等。
Java技术江湖
2021/09/10
5960
携程一面:String 类型的变量和常量做“+”运算时发生了什么?
当我们谈注册中心时谈什么?
注册中心对于服务提供者需要具备服务注册、注销的能力,对于服务消费者需要提供查询服务、感知服务变化的功能。当然还需要解决一些其他问题才能成为一个优秀的注册中心,如高可用、高性能、水平扩展能力、服务探活能力、路由功能、多机房(多活)能力等。
龟仙老人
2020/12/16
6020
【面试题精讲】String 类型的变量和常量做“+”运算时发生了什么?
在 Java 中,String 类型的变量和常量可以通过"+"运算符进行拼接操作。这意味着当我们使用"+"将两个 String 类型的值连接起来时,会生成一个新的 String 对象。
程序员朱永胜
2023/10/14
3350

相似问题

滚动列表时Android SimpleCursorAdapter newView bindView错误

10

Android: newView和bindView在自定义SimpleCursorAdapter中的问题

21

newView和bindView不被调用

11

bindView()和newView()在CursorAdapter中的作用

11

CursorAdapter bindView和newView不开火

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文