mirror of
https://github.com/phuoc-ng/csslayout.git
synced 2025-08-06 06:07:33 +02:00
Merge pull request #40 from phuoc-ng/fallback-loading
Add fallback loading
This commit is contained in:
@@ -1,7 +1,27 @@
|
|||||||
|
import React from 'react';
|
||||||
import loadable from '@loadable/component';
|
import loadable from '@loadable/component';
|
||||||
|
|
||||||
|
import './spinner.css';
|
||||||
|
|
||||||
const slug = item => item.toLowerCase().split(' ').join('-');
|
const slug = item => item.toLowerCase().split(' ').join('-');
|
||||||
|
|
||||||
const DetailsLoader = loadable(props => import(`../patterns/${slug(props.pattern)}/Details`));
|
const DetailsLoader = loadable(props => import(`../patterns/${slug(props.pattern)}/Details`), {
|
||||||
|
fallback: (
|
||||||
|
<div className="w100 h-100 flex items-center justify-center">
|
||||||
|
<svg className="spinner" width="64px" height="64px" viewBox="0 0 32 32">
|
||||||
|
<circle
|
||||||
|
cx="16"
|
||||||
|
cy="16"
|
||||||
|
fill="none"
|
||||||
|
r="12"
|
||||||
|
stroke="rgba(0, 0, 0, 0.4)"
|
||||||
|
strokeDasharray={Math.PI * 2 * 9}
|
||||||
|
strokeLinecap="round"
|
||||||
|
strokeWidth="4"
|
||||||
|
/>
|
||||||
|
</svg>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
});
|
||||||
|
|
||||||
export default DetailsLoader;
|
export default DetailsLoader;
|
||||||
|
16
client/loaders/spinner.css
Normal file
16
client/loaders/spinner.css
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
.spinner {
|
||||||
|
animation-duration: 750ms;
|
||||||
|
animation-name: viewer-spinner-transform;
|
||||||
|
animation-iteration-count: infinite;
|
||||||
|
animation-timing-function: linear;
|
||||||
|
transition-property: transform;
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes viewer-spinner-transform {
|
||||||
|
from {
|
||||||
|
transform: rotate(0deg);
|
||||||
|
}
|
||||||
|
to {
|
||||||
|
transform: rotate(360deg);
|
||||||
|
}
|
||||||
|
}
|
Reference in New Issue
Block a user