Can/Should 我使用 Fabric React Stack 元素布置我的 React Web 应用程序?
Can/Should I lay out my react web app using Fabric React Stack element?
当我查看文档时,似乎 Stack element 是我应该用来布置我的应用程序的文件。
我想要一个带有页眉、页脚和主要部分的基本布局。页眉和页脚应该有固定的高度。主要部分的高度必须 grow/shrink。全部都必须具有 window 宽度的 100%。
我在 Stack.Item
上看到了 grow
道具。我假设我只需要将 grow
设置到主要部分。
问题是我无法让 Stack
占据 window 的整个高度。它根据其子项设置其大小。
我想我有两个可能的解决方案:
1) 根据window高度设置Stack
的高度。也把它的高度做成一个状态,这样当window高度改变时,改变Stack
高度。
2) 直接在 CSS/HTML 中进行高级布局,例如使用 flexbox。仅将 Stack
用于节内布局。
你有什么建议?
这里 codepen 演示您使用 Stack
布局的要求。它基本上按照您在选项 1 中的建议进行操作。您可以随时查看选项 2,但这完全取决于您应用的复杂性。
Stack 是 Flexbox 的抽象,添加了一些不错的东西(比如 gap)。因此,如果 Flexbox 足以构建您的页面布局,Stack 将完美工作。
如果您需要更复杂的二维布局,您可能需要为每个区域正常 css 网格,然后通过每个区域内部的 Stack 布局内容。
当我查看文档时,似乎 Stack element 是我应该用来布置我的应用程序的文件。
我想要一个带有页眉、页脚和主要部分的基本布局。页眉和页脚应该有固定的高度。主要部分的高度必须 grow/shrink。全部都必须具有 window 宽度的 100%。
我在 Stack.Item
上看到了 grow
道具。我假设我只需要将 grow
设置到主要部分。
问题是我无法让 Stack
占据 window 的整个高度。它根据其子项设置其大小。
我想我有两个可能的解决方案:
1) 根据window高度设置Stack
的高度。也把它的高度做成一个状态,这样当window高度改变时,改变Stack
高度。
2) 直接在 CSS/HTML 中进行高级布局,例如使用 flexbox。仅将 Stack
用于节内布局。
你有什么建议?
这里 codepen 演示您使用 Stack
布局的要求。它基本上按照您在选项 1 中的建议进行操作。您可以随时查看选项 2,但这完全取决于您应用的复杂性。
Stack 是 Flexbox 的抽象,添加了一些不错的东西(比如 gap)。因此,如果 Flexbox 足以构建您的页面布局,Stack 将完美工作。
如果您需要更复杂的二维布局,您可能需要为每个区域正常 css 网格,然后通过每个区域内部的 Stack 布局内容。