Solution 1
.dash-spinner {
background-image: url("http://i.stack.imgur.com/SBv4T.gif");
background-size: contain;
background-repeat: no-repeat;
}
.dash-spinner * {
display: none !important;
}
from dash import Dash
import time
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output
app = Dash(__name__)
app.layout = html.Div(
children=[
html.H3("Edit text input to see loading state"),
dcc.Input(id="loading-input-1", value="Input triggers local spinner"),
dcc.Loading(
id="loading-1", type="default", children=html.Div(id="loading-output-1")
),
],
)
@app.callback(
Output("loading-output-1", "children"),
Input("loading-input-1", "value"),
prevent_initial_call=True,
)
def input_triggers_spinner(value):
time.sleep(2)
return value
if __name__ == "__main__":
app.run_server()
Solution 2
.gif-loading {
margin: 1rem auto;
width: 1280px;
height: 720px;
text-align: center;
font-size: 10px;
background-image: url("loading.gif");
background-size: contain;
background-repeat: no-repeat;
}
dcc.Loading(
id="loading-1", type="default", className='gif-loading', children=html.Div(id="loading-output-1")
),