使用 Semantic UI React 加载屏幕
Posted
技术标签:
【中文标题】使用 Semantic UI React 加载屏幕【英文标题】:Loading screen using Semantic UI React 【发布时间】:2021-07-21 20:39:42 【问题描述】:我正在尝试显示加载屏幕,同时使用 Semantic UI React 完成应用程序的其余部分加载。
问题是,当我加载页面时,它只显示文本“正在加载”,并且它仅在几秒钟后正确呈现加载器,就像它没有任何 css 一样。拥有一个加载器的目的是它必须在页面前面,而其他内容呈现,但如果它有同样的问题,我不知道如何只在内容呈现并准备好显示时显示内容。
我正在使用语义 ui 反应网页 (https://react.semantic-ui.com/elements/loader/#types-loader) 中的此代码
function App()
const [loading, setLoading] = useState(true);
useEffect(() =>
setTimeout(() =>
setLoading(false);
, 2000)
, [])
return (
<div>
<div style= display: loading ? "block" : "none" >
<Dimmer active>
<Loader content='Loading' />
</Dimmer>
</div>
<div style= display: loading ? "none" : "block" >
// Content that needs time to render
</div>
</div>
)
export default App;
我该怎么做才能仅在完成渲染时显示内容?
【问题讨论】:
【参考方案1】:尝试将其放入Segment
。此外,我不会使用您用来显示或隐藏事物的技术,我总是这样做:
condition && <Component />
所以在这种情况下,您的代码将是:
loading === true && <Segment><Dimmer active><Loader content='Loading' /></Dimmer></Segment>
和
loading === false && <>
/* Content that needs time to render */
</>
当然,只要您的 API 调用完成,就将 loading
设置为 false。
希望对您有所帮助并回答问题,如果没有请指出:)。
【讨论】:
以上是关于使用 Semantic UI React 加载屏幕的主要内容,如果未能解决你的问题,请参考以下文章
网格还是 Flexboox?如果使用 react-semantic-ui
在 React 中使用 Semantic-UI 固定菜单和侧边栏
Semantic-UI-React (称 stardust) 对比 Antd