React Native - 在布局中,aspectRatio 属性的用途是什么?

Sta*_*low 0 css reactjs react-native react-native-flexbox

我是新来的react native。我正在探索这里的layout属性,但我一直无法理解该属性,因为它不存在于. 但经过一些研究后,我对这个属性有了一些了解。但我想了解这里记录的步骤,但我完全不明白并且无法理解它们。谁能用简单的话解释一下每个步骤aspectRatioCSS

  • 在具有设置宽度/高度纵横比的节点(这里是什么节点?)上控制未设置尺寸的大小(这里什么是未设置尺寸?)
  • 在具有设置的弹性基础纵横比的节点(这里的节点是什么?)上,如果未设置,则控制横轴上节点的大小
  • 在具有测量函数纵横比的节点(这里的节点是什么?)上,就像测量函数(这里的函数是什么?)测量弹性基础一样
  • 在具有弹性增长/收缩纵横比的节点上(这里的节点是什么?),如果未设置,则控制横轴上节点的大小
  • 纵横比考虑了最小/最大尺寸(这里考虑什么?)

我将对所有贡献者感到高兴。谢谢 !!!

And*_*hiu 5

除非另有说明, React 本机规范中的“节点”是指实现Node接口的任何元素,有时也指其影子 DOM 对应项。

正如您在文档中注意到的,有很多对象实现 Node 接口,例如 Attr、Comment、CDATASection 或 Character。然而,当提到网页时,术语“节点”通常指两种最常见的节点类型:

它们被称为节点,因为DOM通常与树模型相关联,其中每个子元素都表示为可以具有后续子元素的分支(节点)。


宽高比是 CSS @media 规范width定义为和之间的比率height。在媒体查询中,它指的是视口的widthheight,但它也常用于指代任何媒体元素(图像、视频等)。

关于纵横比,普遍接受的术语是:

  • landscapewidth大于的元素height
  • portraitheight大于的元素width
  • squareheight具有相等和的元素width

React Native实现aspectRatio“节点” (不是视口)的非标准属性,定义为数字,允许锁定和之间的比率。widthheight

当您设置aspectRatio其中一项时widthheight它将根据该aspectRatio值计算另一项。
aspectRatio2将尝试调整节点的大小,height其a 比 的小两倍,width而 的值.2将导致节点的aheight比 的大5 倍 width

为了将来的参考,每当您发现现有的 React Native 文档含糊不清或太稀缺时,最好的查找说明的地方是:

  • MDN - 一个关于所有网络事物的友好而全面的库,由大型团队(Mozilla、Google、Microsoft、Facebook 和 W3C)以及个人 Web 开发人员共同努力打造。
  • W3C 标准。这就是通常所说的“官方标准”或“标准规范”。

由于 Web 由多种不同的技术组成,W3C 很快就会变得势不可挡。但是,MDN 页面始终包含相关标准的链接(如果适用)。


注意:不要将 W3C(万维网联盟)误认为是 w3schools。后者是一个私人网站,试图通过开发者寻求“官方标准”的流量来货币化。一种无害的蜱虫。